我正在尝试从我正在注入的服务中调用一个组件,它位于一个控制器中 - main_controller.js
我在同一文件夹中有main.html。 “/应用程序/ ABC”
<li ng-click="$ctrl.openUpload()">Upload</li>
这是控制器中的代码。
function MainCtrl($window, $cookies, $stateParams, $state,
modalService, $q) {
var modal = modalService.open({
size: 'upload',
backdrop: 'static',
component: 'assetUpload',
resolve: {
saveMsg: function () {
return 'Uploading…';
},
isModal: true,
isReady: function () {
return function () {
return renderedPromise;
};
},
onCancel: function () {
return function (ctrl) {
ctrl.modalInstance.dismiss();
};
}
}
});
}
我的组件位于“/ app / component / _asset_upload /”文件夹中。
当我从控制器调用上传功能时,它会给我一个错误, “/abc/app/components/_asset_upload/asset_upload.html”404(未找到)
我不明白为什么它在“abc”文件夹(与控制器相同的文件夹)中查找组件而不是查看“/ app / components / _asset_upload /”文件夹。
如何让代码更好。即使它是一个不同的架构,请帮助。感谢
答案 0 :(得分:0)
在定义组件时,您必须像这样设置templateUrl
templateUrl : 'app/components/_asset_upload/asset_upload.html'
这将从当前文件夹中搜索您的HTML,因此将其更改为
templateUrl : '/app/components/_asset_upload/asset_upload.html'
这将从应用根目录中搜索您的HTML。