【发布时间】:2015-07-22 16:11:04
【问题描述】:
我有一个模块 m1 需要先初始化,然后才能导入模块 m2:
import * as m1 from 'm1';
m1.init(...)
import * as m2 from 'm2';
我更新了browserify 并从6to5ify 切换到babelify 变压器。之后,我的包中的require 调用被移到了顶部:
...
var _m1 = require('./m1');
var m1 = _interopRequireWildcard(_m1);
var _m2 = require('./m2');
var m2 = _interopRequireWildcard(_m2);
m1.init('init value');
...
为什么require 呼叫被移到顶部?我可以在调用m1.init 之后使用ES6 模块导入语法导入m2 吗?我可以直接使用require
import * as m1 from 'm1';
m1.init(...)
const m2 = require('m2');
我明白了
var _m1 = require('./m1');
var m1 = _interopRequireWildcard(_m1);
m1.init('init value');
var m2 = require('./m2');
但这对我来说似乎是一种黑客行为。
【问题讨论】:
标签: browserify ecmascript-6 babeljs