在Angular中导入和使用lodash的正确方法

前端之家收集整理的这篇文章主要介绍了在Angular中导入和使用lodash的正确方法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我曾经能够通过导入语句在Angular中使用lodash方法,如下所示:
import {debounce as _debounce} from 'lodash';

我现在在使用该语句时收到以下错误

'"{...}/node_modules/@types/lodash/index"' has no exported member 'debounce'.

唯一能编译而没有错误的是这句话:

import * as _ from 'lodash';

在我的代码中,我将_debounce()更改为_.debounce()。这是唯一(和/或正确)的方式吗?有没有办法只进口去抖,或者由于“树木”而无关紧要?我意识到我可以编写自己的去抖函数,但我主要对“正确”的方法感兴趣。

附:我尝试过的其他变体(每种变体都有一些与之相关的错误):

import {debounce as _debounce } from 'lodash/debounce';
import * as _debounce from 'lodash/debounce';
import debounce = require('lodash/debounce');

仅供参考我…我使用以下版本:

Angular: 2.4.5

Typescript: 2.1.5

Angular-cli: 1.0.0-beta.26

(如果你关心树摇动,请看更新)
我想是为了把lodash带到你已经完成的项目中
npm install lodash --save
npm install @types/lodash --save-dev

如果您想要导入所需的功能,您应该:

import * as debounce from 'lodash/debounce'

要么

import { debounce } from "lodash";

用它作为:

debounce()

顺便说一句:你可能不得不将你的打字稿版本降级到2.0.10,因为你使用的是角度2.x.

npm install typescript@2.0.10 --save-dev

更新:

最近我意识到lodash包不是树可摇动的,所以如果你需要三个摇动只需使用lodash-es

npm install lodash-es --save
npm install @types/lodash-es --save-dev

import debounce from 'lodash-es/debounce'

猜你在找的Angularjs相关文章