使用babel6來編譯jsx文件,出現(xiàn)了not a function這個(gè)問題,其中,模塊文件的內(nèi)容如下:export default class Test {
test() { console.log("test ok!");
}
}主文件如下:import React from 'react';import Hello from './component.jsx';import Test from './test.js';
main();function main() {
Test.Test();
React.render(<Hello />, document.getElementById('app'));
}原來是調(diào)用一個(gè)component的jsx文件作為模塊,但是后來謝了test.js也出錯(cuò),webpack編譯可以通過,但是babel編譯之后的文件中main()對(duì)應(yīng)的代碼為:function main() {
_test2.default.Test();
_react2.default.render(_react2.default.createElement(_component2.default, null ), document.getElementById('app'));
}這里多了一個(gè)default,不知道是為什么?我的webpack.config.js中相關(guān)的部分如下:module: { loaders: [{ test: /\.jsx?$/, exclude:/node_modules/, loader: 'babel', query:
{ presets:['react','es2015']
}
}]
}我查看了babel升級(jí)log發(fā)現(xiàn),有說對(duì)編譯做改動(dòng),但是沒有說export default的模塊用import導(dǎo)入會(huì)出現(xiàn)這個(gè)問題,請(qǐng)教一下大家,有什么解決的辦法嗎?
babel6編譯es6,export default編譯完成后多出現(xiàn)一個(gè)default,如何解決?
眼眸繁星
2018-08-05 15:10:05