我想要像RequireJS http://requirejs.org/docs/optimization.html#empty这样的功能empty:
我的用例是我包含jquery-migrate在开发中,但我想在生产时将其排除在外.
使用IgnorePlugin只是使它不包括在内,当require它在代码中,它然后抛出一个错误(Uncaught Error: Cannot find module "jquery-migrate").
我想要发生的是它只返回undefined或类似的东西(比如empty:RequireJS).我想不要触摸代码中的导入,只是将其配置为返回undefined.
编辑:使用NormalModuleReplacementPlugin作品,如果我将替换指向空文件.但是为此保留一个空文件似乎是不必要的.
我一直在搞乱Webpack的不同功能,我正在慢慢理解事物.
典型的控制台输出:
[WDS] App updated. Recompiling...
[WDS] App hot update...
[HMR] Checking for updates on the server...
[HMR] The following modules couldn't be hot updated: (They would need a full reload!)
[HMR] - 14
[HMR] Nothing hot updated.
[HMR] App is up to date.
Run Code Online (Sandbox Code Playgroud)
无论什么代码片段得到更新,JS,手写笔,模板等都会发生这种情况.一切都经过转换(Babel,Stylus,Handlebars),但这无关紧要.
如果有人想要查看完整的源代码,我有一个GitHub项目:https://github.com/SimenB/webpack-fun.npm install && npm start运行它.
的WebPack-配置:
'use strict';
var webpack = require('webpack');
var path = require('path');
var ExtractTextPlugin = require('extract-text-webpack-plugin');
var autoprefixer = require('autoprefixer-core');
module.exports = {
context: path.resolve('./src'), …Run Code Online (Sandbox Code Playgroud) 我们有一个作用域模块,为了npm能够解析它,我们必须说出它的存储库在哪里。这可以在 ie 中完成.npmrc,例如:
@my-scope:registry=http://my-sweet-replication.example.com/npm/
Run Code Online (Sandbox Code Playgroud)
我的问题是,由于 GET 请求的一些代理和身份验证,我必须.npmrc为开发和构建服务器(travis enterprise)输入不同的值。我们已经利用了这样一个事实:npm可以读取未限定范围的包的环境变量,但由于 和@都是:环境变量中的无效字符,因此我无法导出正确的 URL。
关于如何告诉 npm 在哪里查找作用域模块而不将其放入的任何想法.npmrc?