我想在保存类型的同时从lodash导入单个函数。如下所示:
import invokeMap from 'lodash/invokeMap';但我似乎不能这样做。编译器说没有模块lodash/invokeMap。这是正确的- DefinitelyTyped只为lodash声明顶级模块,所以我只能导入整个包。但是我只想导入一个函数。
是否有一种方法只导入有关提交文件的输入信息,而不导入提交文件本身?
下面是我的解决方案。我希望使用标准的CommonJS require函数导入没有类型信息的必要函数,然后将类型转换到它上:
declare var require;
var invokeMap: _.invokeMap = require('lodash/invokeMap');
^^^^^^^^^^^
Here I want to cast proper type from DefinitelyTyped,
but how to reach that `invokeMap` typings alone?发布于 2016-05-04 08:10:41
对于当前的类型寄存,这应该像您以前尝试过的那样工作:
import invokeMap from 'lodash/invokeMap';只需安装环境依赖项的当前版本,如下所示:
typings i -SA github:DefinitelyTyped/DefinitelyTyped/lodash/lodash.d.ts#672afd8f7b09d839b61eeb4867753876cf79c8b6发布于 2016-09-18 19:59:15
从TypeScript 2开始,您可以直接从npm安装类型:
npm install @types/lodash
这些类型对每个模块都有声明。
发布于 2016-04-02 13:56:33
您可以使用对象析构只从模块导入invokeMap函数。
import {invokeMap} from 'lodash';
invokeMap([[5, 1, 7], [3, 2, 1]], 'sort');https://stackoverflow.com/questions/36373959
复制相似问题