2

尝试在 grunt 中使用 WebPack 来构建我所有的 javascript、css 和其他东西并将其放置在适当的位置。require('modernizer')在我的 Gruntfile.js 的一个模块中包含的一个 javascript 文件中使用时遇到以下问题 。错误如下:

Fatal error: EMFILE, too many open files ../about/node_modules/modernizr/node_modules/file/lib/file.js'

当我使用ulimit增加要处理的文件数量时,会出现其他错误。在我的 package.json 我有以下内容:

"dependencies": {
"jquery": "^2.1.1",
"jquery-ui": "^1.10.5",
"modernizr": "^2.8.3"    

}

有没有办法使用包中的 Modernizer 来包含它的模块,而无需在页面上使用此指令:

 <script type="text/javascript" src="{portal:createUrl('/_public/about/js/modernizr/modernizr.custom.flexbox.js')}"></script>

?

提前致谢!

4

1 回答 1

2

首先,只需标记您应该调用require('modernizr')而不是require('modernizer').

其次,要回答您的问题“有没有办法使用包中的 Modernizer 来包含它的模块,而无需在页面上使用此指令?

就在这里。这是script-loader. <script>它基本上允许您要求一个库,并像在标签内一样执行它。你可以通过调用来使用它:

更新 2017-12-27

require('script-loader');
require('script-loader!modernizr');

之前

require('script-loader');
require('script!modernizr');

请记住通过在命令行中script-loader调用来提前安装。npm install script-loader --save

于 2015-01-22T10:47:22.763 回答