将lodash版本更新为4.17.4会破坏代码

时间:2019-01-03 23:51:59

标签: node.js typescript express lodash

我将 lodash 更新为4.17.4版,并且Typescript开始引发此错误:

TypeError: _.uniqBy is not a function Uncaught TypeError: _.split is not a function

我的代码如下:

import * as _ from 'lodash';
const uniqueRecordType = _.uniqBy(rArr,'recordtype');

此功能是否已从 lodash 中删除?

2 个答案:

答案 0 :(得分:0)

根据文档,以下内容应该可以工作:

const uniqBy = require('lodash.uniqby');

const uniqueRecordType = uniqBy(rArr,'recordtype');

如何安装lodash依赖项:

npm install --save lodash.uniqby

在使用ECMAScript 5和CommonJS模块时,您可以像这样导入它:

var uniqBy = require('lodash.uniqby');

使用ES6模块,它将是:

import uniqBy from 'lodash.uniqBy';

答案 1 :(得分:0)

Lodash版本4.17.4 应该导入为:

import _ from 'lodash';

这是我在lodash版本4.17.4 https://stackblitz.com/edit/typescript-54031396?file=index.ts

下对 stackblitz 进行的测试

当前的Lodash版本为 4.17.11 ,它将与

一起使用
import * as _ from 'lodash';

因此您可以升级到 4.17.11 ,或者如果您要使用版本 4.17.4 ,则可以将 import 更改为{{1 }}

希望它会帮助您:P