我有一个浏览器应用程序的项目,我想分成两部分。 作为一个最小的例子,想象一下./core我有:
// core.js
import SuperClass from "../core/SuperClass";
export {SuperClass};
// SuperClass.js
class SuperClass
{
constructor()
{
console.log('SuperClass constructor');
}
}
export default SuperClass
和目录./game有
//game.js
import SuperClass from "../core/SuperClass";
console.log(SuperClass);
如果我使用game.js作为入口点构建,一切都很好,因为所有依赖项都会进入捆绑包。
但是,如果我从./core中排除文件(通过使用browserify的排除功能)并与它们单独捆绑并在game.js之前加载:
<script src="scripts/core.js"></script>
<script src="scripts/game.js"></script>
我得到:未捕获错误:无法从game.js找到模块'../core/SuperClass'
在运行时为game.js提供这些依赖项的方法是什么?我的构建过程使用gulp,babelify和browserify。
答案 0 :(得分:1)
如果您通过放置在代码之前的<script>
标记添加代码,您可以假设存在,作为全局变量/类/库,您不需要导入它,因为它已经当下。这就像使用好的旧JQuery,例如:当您将文件放在HTML文件中时,您知道$
无所不在