我正在使用gulp将我的模板添加到生产js文件中,以便我可以通过$ templateCache访问它们。一切都适用于我的指令,但我的状态提供程序中的模板不起作用。看起来$ templateCache对象似乎不可用。
连接的JS文件。它位于文件的底部:
angular.module("barmehealth").run(["$templateCache",
function($templateCache {
$templateCache.put("app/views/register.html","<div>Register</div>");
$templateCache.put("app/modules/framework/framework.template.html","<div class>Framework Template</div>");
}
]);
我已尝试过以下两种方法,但都不起作用。也没有错误。视图只是加载索引页面,只给我重复的内容。
使用templateUrl
(function () {
'use strict';
angular.module('barmehealth', ['framework', 'ui.router'])
.config(function($urlRouterProvider, $stateProvider) {
$urlRouterProvider.otherwise('/');
$stateProvider
.state('register', {
url: '/register',
templateProvider: function($templateCache) {
return $templateCache.get('/app/views/register.html');
}
});
});
}());
使用templateProvider
(function () {
'use strict';
angular.module('barmehealth', ['framework', 'ui.router'])
.config(function($urlRouterProvider, $stateProvider) {
$urlRouterProvider.otherwise('/');
$stateProvider
.state('register', {
url: '/register',
templateUrl: '/app/views/register.html'
});
});
}());
答案 0 :(得分:0)
您已经添加了额外的/
(斜杠),在那里不需要,通过删除它,您可以在templateProvider
函数中找到所需的模板。
使用
return $templateCache.get('app/views/register.html');
而不是
return $templateCache.get('/app/views/register.html');