我想把react作为externallib从bundle里面分离出来,但是require好像不起作用呢,在配置里起得名字也不好使。只能使用文件的相对路径来require或者干脆不require就行了。可是我想使用cmd模式用require来把它引入怎么办?//配置如下varwebpack=require('webpack');varpath=require('path');varconfig={entry:[path.resolve(__dirname,'scripts/main.js')],output:{path:path.resolve(__dirname,'build'),libraryTarget:"umd",library:'',filename:'bundle.js'},externals:[//第一种写法{"../build/react.min.js":'React'}//第二种写法,这货怎么用的有木有大神教一下--!{"../build/react.min.js":{root:'ReactJS',commonjs:["./ReactJS","ReactJS"],}}],module:{loaders:[{exclude:"scripts/react.min.js",test:/\.js$/,loaders:['babel']}]}};//js如下'usestrict';//第一种配置,下面这句话写不写都不会报错。varReact=require('../build/react.min.js');console.log('main'+1+2);varMain=React.createClass({getInitialState:function(){return{switch:true};},_toggle(){this.setState({switch:!this.state.switch});},render(){return();}});React.render(,document.body);
2 回答
holdtom
TA贡献1805条经验 获得超10个赞
//webpack.config.jsmodule.exports={externals:{'react':'React'},//...}externals对象的key是给require时用的,比如require('react'),对象的value表示的是如何在global(即window)中访问到该对象,这里是window.React。同理jquery的话就可以这样写:'jquery':'jQuery',那么require('jquery')即可。HTML中注意引入顺序即可:
ibeautiful
TA贡献1993条经验 获得超5个赞
我是这样写的javascript//webpack.config.jsmodule.exports={externals:{'react':'window.React'},//...}//main.jsvarReact=require('react');//home.html
添加回答
举报
0/150
提交
取消