将 lodash 与 stenciljs 结合使用

Using lodash with stenciljs

我正在尝试将 lodash 导入到我的 stenciljs 组件中。我尝试了多种方法并查看了很多与此相关的解决方案,但没有成功。

我尝试过以下方式导入:

import * as _ from 'lodash';
import _ from 'lodash';
import 'lodash';
import {_} from 'lodash';

None 为我工作。第一个不会抛出任何错误,但我无法使用 lodash 的任何功能。 其余方法抛出错误并且构建失败。

任何帮助都将不胜感激。

提前致谢!!

您的导入没问题。 Stencil 编译器正在将您的 lodash 函数调用解析为 "undefined"。尝试在您的项目中添加 lodash 类型。它应该在编译时解析函数定义。

yarn add -D  lodash @types/lodash

OR

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

我建议你使用 lodash-es 包,因为它是使用 es6 模块编写的,所以 stencil 编译器将能够摇树你只需要的东西

小提示,但正如@valikhan 所建议的,您应该只导入您需要的包,如:

import _find from 'lodash/find'

在那种情况下,只会加载 find 模块,而不是所有的 lodash 库。 请注意,如果您使用解构作为 import { find } from 'lodash/find',您还将包含整个 lodash 库,而您实际上并不需要它。