我正在使用Gulp,Babelify和Browserify將ES2015編譯爲ES5。如何在ES2015模塊中使用全局變量
文件夾結構:
project
- js
- level.js
- main.js
如果我有如下定義的模塊:
// level.js
var level = [];
level[0] = {
name: 'level1',
grid: {
width: GRID_WIDTH,
height: GRID_HEIGHT
}
};
export default level;
然後,我有我的主JavaScript文件:
// main.js
import level from './level.js';
var siteGame = (function() {
var GRID_WIDTH = 50,
GRID_HEIGHT = 50;
console.log(level);
}());
我怎樣才能確保GRID_WIDTH和GRID_HEIGHT在level.js中可用?
目前,我得到一個錯誤,告知該GRID_WIDTH是(從level.js)未定義
簡而言之,你沒有。如果你真的想要,你可以用DefinePlugin來使用Webpack,但是更好的方法是用一種不同的方式解決這個問題,比如需要。 –
爲什麼你在'main.js'中將這些變量局部放在IIFE中?你是否打算讓它們保密,你是否打算使用多個不同的值(在多個範圍內)? – Bergi