我正在寻求从systemJS交换到webpack。除了让我的一个外部脚本再次运行之外,大多数设置似乎都在工作。
以前使用systemJS我有一个设置,我将在index.html中导入外部.js脚本。
在我的角度服务中,我可以通过执行以下操作与该脚本进行交互 -
declare var ExternalCode: any;
.
.
.
ExternalCode.RunProcess(data, infomation);
在webpack中,我现在有3个文件被导出并注入我的index.html - app.js,vendor.js和polyfills.js。在我的供应商文件中,我导入了代码,
import "./AppScripts/ExternalCode";
如果我查看vendor.js,我会看到我的ExternalCode包装如此,
(function(module, exports, __webpack_require__) {
eval( EXTERNAL CODE IS ALL HERE );
})
我似乎无法解决的问题是我现在如何在我的服务中调用webpack vendor.js包中的外部代码。无论如何现在从我的angular 2服务中导入/运行代码?
我还尝试过在index.html文件中再次导入脚本,但是在webpack-dev-server上,当我使用IIS Express运行项目时,它将始终从现有路径中抛出404。和SystemJS。
答案 0 :(得分:1)
想出如何使其工作方式与我之前使用SystemJS一样。在如上所述的vendor.ts中,导入脚本,使其包含在webpack-dev-server中。
import "./externaljs/ExternalCode.js";
不要像在index.html的相对位置那样处理导入,而是像这样传递完整路径 -
<script src="./src/externaljs/ExternalCode.js"></script>