gpt4 book ai didi

javascript - 从 $routeProvider 中的 $templateCache 访问模板

转载 作者:行者123 更新时间:2023-11-28 00:23:18 26 4
gpt4 key购买 nike

我是 Angular JS 新手,正在尝试实现 grunt-angular-templates。我已经成功地将所有 html 连接到一个 JS 文件中。

我的 app.js 文件:

angular.module('LoginApp').config(function ($routeProvider
.when('/login', {
templateUrl: '/views/common/login.html',
controller: 'LoginCtrl'
})
.otherwise({
redirectTo: '/account'
});
);

所以从这里如果我加载 http://localhost:50/login ,我可以在屏幕上看到登录页面,并从/views/common/login.html 路径引用。

我正在尝试使用 $templateCache 来实现相同的功能。我将所有 html 连接到一个 JS 文件中。我需要引用通用 JS 文件中的模板。我已将模板 JS 文件包含在 index.html 中

连接的 JS 文件:

angular.module('LoginApp').run(["$templateCache", function($templateCache)       {
$templateCache.put("../app/views/commmon/login.html",
// contents for login.html ...
);
}]);

我的 Gruntfile

ngtemplates: {
myapp: {
options: {
base: "web",
module: "LoginApp",
},
src: ['app/views/common/*.html'],
dest: 'dist/views/html.js'
}
},

我如何从 $templateCache 访问/引用模板?TIA

最佳答案

您不必手动使用 $templateCache。如果您的模板已缓存,Angular 将自动加载它。templateUrl 应该是 Grunt 生成的缓存模板的 ID。

查看这个笨蛋 http://plnkr.co/edit/132S5UMLnBzzGGGI85l3

index.html

  <head>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.3.15/angular.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.3.15/angular-route.js"></script>
<script src="script.js"></script>
</head>

<body>
<div ng-view></div>
<script type="text/ng-template" id="login.html">
login.html
</script>
<script type="text/ng-template" id="account.html">
account.html
</script>
</body>
</html>

脚本.js

'use strict';

angular.module('sandbox', [
'ngRoute'
]).
config(['$routeProvider', function($routeProvider) {
$routeProvider
.when('/login', {
templateUrl: 'login.html'
})
.otherwise({
redirectTo: '/login'
});
}]);

关于javascript - 从 $routeProvider 中的 $templateCache 访问模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29791597/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com