require.ensure([],(require) => { let A = require('./a.js').default; })
import React, {Component} from 'react'; export default class Container extends Component { constructor() { super(); this.state = { currentComponent: null } } doSomething = () => { require.ensure(['./app2'], (require) => { const Comp = require('./app2'); this.setState({ currentComponent: <Comp/> }) }) }; render() { return ( <div> <span onClick={this.doSomething} style={{border: "1px solid #000"}}>点击后,按需加载以下模块</span> {this.state.currentComponent} </div> ) } }
import React from 'react' export default class Hello extends React.Component { render(){ return ( <div>Hello</div> ) } } //warning:这一句必须加上,由于在require.ensure中使用了require引入模块 module.exports = Hello;