【问题标题】:Where to get @types for single lodash package?在哪里获得单个 lodash 包的 @types?
【发布时间】:2017-02-27 17:11:08
【问题描述】:

我需要 lodash 的一项功能 - assignin。我安装了lodash.assignin 并将其导入到我的项目中:

import assignIn = require('lodash.assignin');

但是编译后出现错误:“error TS2307: Cannot find module 'lodash.assignin'”。

我知道我需要输入 lodash.assignin 包的类型,但不幸的是,@types/lodash 中只有 lodash/assignin 类型。

我不想为它的一个功能安装整个 lodash 包,那么 lodash 是否有它们的单个包的类型?

【问题讨论】:

标签: javascript typescript npm lodash


【解决方案1】:

该包 (lodash.assignin) 不可用,请在此处查看可用 lodash 包列表https://www.npmjs.com/browse/keyword/lodash-modularized

例如如果我想使用first 方法我需要安装npm i --save lodash.first 然后我就用这样的方法const first = require('lodash.first');

【讨论】:

  • 不可用是什么意思?和其他包一样github.com/lodash/lodash/tree/4.2.0-npm-packages
  • 无论如何,const assignIn = require('lodash.assignin') 语法对我来说效果很好,尽管它主要是类似节点的变体。
  • 你是对的,它是可用的。我认为您没有正确安装软件包,因为我已经在本地进行了测试并且可以正常工作。你做了npm i --save lodash.assignin 吗?
  • 你还不能在 node.js 中使用import
  • 我是说使用require 是节点样式来导入模块。在打字稿中,最好使用单词import
【解决方案2】:

我刚刚用以下方法解决了这个问题:

src/types/lodash.groupby.d.ts:

import { groupBy } from 'lodash'

export default groupBy

yarn add -D '@types/lodash@^4.6.0'

然后导入:

import groupBy from 'lodash.groupby'

这是使用 TypeScript 2.9。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-19
    • 1970-01-01
    • 1970-01-01
    • 2017-03-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多