我正在尝试使用构建工具brunch
为我的React应用程序制作一些锅炉。启动很容易,但是我需要一些小东西来使我的开发更加完整。其中之一是环境变量。
我尝试了一些想法,但没有任何作用。诸如使用entryPoints
加载config JS文件执行功能之类的事情:
早午餐-config.js
exports.files = {
javascripts: {
joinTo: {
'dependencies.js': /^(?!app/)/,
'bundle.js': /^app//
},
entryPoints: {
'app/confs.js': 'bundle.js'
}
},
stylesheets: {
joinTo: 'app.css'
},
};
exports.plugins = {
babel: { presets: ['latest', 'react'] }
};
confs.js
require('dotenv').config();
require('whatwg-fetch');
,但是现在什么都没有用...有人可以给我一些想法吗?
预先感谢。
编辑
我在配置和结构中更改了一些内容,这个想法仍然相同,在App Bootstrap中加载polifylls
和env
变量。
现在confs.js
是init.js
,未将其编译到bundle.js
中,而是在其自己的文件中添加到public/
中。
内部的代码相同,brunch-config.js
为:
exports.files = {
javascripts: {
joinTo: {
'dependencies.js': /^(?!app/)/,
'bundle.js': 'app/**/*[!init].js', // all but not init.js
'init.js': 'app/init.js' // put init.js in it's own file into public/
}
},
stylesheets: {
joinTo: 'app.css'
},
};
exports.plugins = {
babel: { presets: ['latest', 'react'] },
sass: {
options: {
includePaths: ['node_modules/normalize-css/']
}
}
};
但是无论我在文件中放置什么代码,编译的init.js
是空的require.register()
:
require.register("init.js", function(exports, require, module) {
"use strict";
});
put
<script>require('confs');</script>
在index.html。
中通常,您只需要一个初始的JavaScript文件中的HTML文件即可。在此JavaScript文件中,您需要其他软件包。这是需要的,因此以某种方式使包裹之间的依赖关系明确。