假设我有一个React项目,主要入口点是app.js. 我在哪里包括React,像这样React-DOM:jQuery
import React, {Component} from 'react';
import ReactDOM from 'react-dom';
...
现在想象一下,我在这里定义了一些路由,这将导致它按需触发等,如下所示route1.js:route2.js
SystemJS.import('route1.js');
现在,我曾经jspm像这样捆绑我的代码(比如说,此外react,react-dom我app.js还导入了许多自定义编写的捆绑包)。因此,当我app.js将所有库和自定义模块捆绑在一起时说build.js.
jspm bundle app.js build.js
现在,里面有代码可以按需build.js触发加载route1.js等。route2.js但是,route1.jsand route2.jsalos 使用 ES6 导入reactand react-dom。现在我当然可以使用webpack或jspm捆绑这些route1.js,route2.js等等。看,我已经包含了react和react-dom库build.js,只获取新route1.js的,route2.js。我不想在里面包含相同的库,route1.js或者route2.js因为我已经在里面下载过一次app.js。但仅获取rout1.js或route.js原样(使用 ES6 导入语句)将不起作用,因为浏览器不理解这一点。
我该怎么做
- 在开发中使用 ES6 代码同时按需加载代码
- 不要多次下载相同的库