Sub*_*thi 16 express angularjs webpack
我在我的angular应用程序中使用服务创建uibModal如下
function modal(modalConfig){
var modalInstance = $uibModal.open({
animation: true,
template: require("../a/b/xyz.html"),
controller: modalConfig.controller,
size: modalConfig.size,
controllerAs: modalConfig.controllerAs,
bindToController : true,
resolve: modalConfig.resolveObj
});
}
Run Code Online (Sandbox Code Playgroud)
请注意该行
template: require("../a/b/xyz.html"),
Run Code Online (Sandbox Code Playgroud)
我想在这个地方使用一个变量
template: require(modalConfig.templateUrl),
Run Code Online (Sandbox Code Playgroud)
但是当我用一个变量来代替硬编码值webpack给我时
Critical dependencies:
83:22-54 the request of a dependency is an expression
Run Code Online (Sandbox Code Playgroud)
我无法解决此错误.可能的原因是什么?
我已经使用node-express服务器进行连续webpack构建.我也看了其他答案,但他们没有解决我的问题.
Sub*_*thi 22
经过多次打击和试验后找到了解决方案.我做的是这样的:
template: require("../../scripts" + modalConfig.templateUrl + ".html")
Run Code Online (Sandbox Code Playgroud)
假设
scripts ../../scripts.../../scripts+ modalConfig.templateUrl+ ".html"将形成要使用的文件的正确路径.强制性说明
总是写一些根文件夹的硬编码路径.不要把它变成变量.所以这不行
var context = "../../scripts" ;
template: require(context + modalConfig.templateUrl + ".html")
基本路径(如实际路径的一部分)必须硬编码以进行基本参考,因为它有助于webpack创建动态需求可能需要的所有模块的列表.
| 归档时间: |
|
| 查看次数: |
11866 次 |
| 最近记录: |