Configuration 在webpack中将Javascript对象作为模块公开
在Configuration 在webpack中将Javascript对象作为模块公开,configuration,build,webpack,Configuration,Build,Webpack,在webpack.config.js中,我计算了一个javascript映射,希望将其作为模块导入浏览器。我可以将数据写入磁盘,然后用例如读取,但有没有更优雅的方法在内存中这样做 webpack.config: var config = { key: 'data' } // do something with webpack loaders some.file.that.is.executed.in.browser.js: var config = require('config'
webpack.config.js
中,我计算了一个javascript映射,希望将其作为模块导入浏览器。我可以将数据写入磁盘,然后用例如读取,但有没有更优雅的方法在内存中这样做
webpack.config:
var config = {
key: 'data'
}
// do something with webpack loaders
some.file.that.is.executed.in.browser.js:
var config = require('config')
window.alert('Config is', config.key)
网页包加载器是文件预处理器,因此需要有您导入的文件。因此,创建一个虚拟文件并使用它覆盖内容 为项目创建一个空的
config.json
在webpack.config.js中:
var appConfig = {
key: 'data'
}
...
loaders: [
{
test: /config.json$/,
loader: 'json-string-loader?json=' + JSON.stringify(appConfig)
}
在浏览器中:
var appConfig = require("./config.json");
// => returns {key: 'data'}
我可以将数据写入磁盘,然后用例如
,但还有更优雅的吗
如何在内存中实现这一点
为什么??您可以在config.js中执行所需的任何操作(而不是静态json),只需返回一个结果:
var data = 'foo' + 'bar';
module.exports = {
key: data
}
在这种情况下,顺便说一下,您甚至不需要使用加载器代码>,但我不想加载整个package.json,我只需要一个版本。因此,我将在构建时为
package.json
生成替换包(这是一个非常有用的包;)