在早午餐中加载dotenv和polyfills



我正在尝试使用构建工具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中加载polifyllsenv变量。

现在confs.jsinit.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文件中,您需要其他软件包。这是需要的,因此以某种方式使包裹之间的依赖关系明确。

最新更新