需要 lodash 模块和 webpack
requiring lodash modules with webpack
我以前使用 lodash.js 没有任何包装,如下所示:
if (_.isFunction(myFunc)) { ... }
最近开始使用webpack。现在,似乎 isFunction 等许多功能都不是核心模块的一部分。因此,以下工作:
var _ = require("lodash/core");
var _isFunction = require("lodash/isFunction");
但是,当我在没有 webpack(没有点)的情况下使用 lodash 时,上面改变了语法。我是否应该像下面这样要求:
_.isFunction = require("lodash/isFunction")
所以,要保持相同的语法?
当您执行以下操作时,您将所有内容都导入到一个大的 lodash 对象下:
var _ = require('lodash');
_
(或您选择的任何变量)将填充一堆函数:
_ = {
isX: function...
isY: function...
// ... etc
}
即:它带来了一切。
当您执行以下操作时,它只会将所需的模块直接导入到变量中:
var anynameX = require('lodash/isX');
var anynameY = require('lodash/isY');
anynameX
和 anynameY
可以是任何东西。
换句话说:
_.isX === anynameX;
_.isY === anynameY;
所以要回答你的最后一个问题,你可以这样做:
_.anynameX = require('lodash/isX');
但前提是 _
已经存在(并且未冻结),例如:
var _ = {};
_.anynameX = require('lodash/isX');
我以前使用 lodash.js 没有任何包装,如下所示:
if (_.isFunction(myFunc)) { ... }
最近开始使用webpack。现在,似乎 isFunction 等许多功能都不是核心模块的一部分。因此,以下工作:
var _ = require("lodash/core");
var _isFunction = require("lodash/isFunction");
但是,当我在没有 webpack(没有点)的情况下使用 lodash 时,上面改变了语法。我是否应该像下面这样要求:
_.isFunction = require("lodash/isFunction")
所以,要保持相同的语法?
当您执行以下操作时,您将所有内容都导入到一个大的 lodash 对象下:
var _ = require('lodash');
_
(或您选择的任何变量)将填充一堆函数:
_ = {
isX: function...
isY: function...
// ... etc
}
即:它带来了一切。
当您执行以下操作时,它只会将所需的模块直接导入到变量中:
var anynameX = require('lodash/isX');
var anynameY = require('lodash/isY');
anynameX
和 anynameY
可以是任何东西。
换句话说:
_.isX === anynameX;
_.isY === anynameY;
所以要回答你的最后一个问题,你可以这样做:
_.anynameX = require('lodash/isX');
但前提是 _
已经存在(并且未冻结),例如:
var _ = {};
_.anynameX = require('lodash/isX');