Angular仍然试图寻找模板,即使我已经模板化了它们

时间:2015-01-26 22:16:34

标签: javascript angularjs angular-template

我正在尝试合并gulpangular ngbpionic。到目前为止,我已将示例应用程序代码重新构建为ngbp样式,并且我已将模板编译为js文件,以便将它们加载到$templateCache然后我的应用程序{{1}文件只能从缓存中获取模板。

在我的js

index.html

在我的 <!-- inject:js --> <script src="/vendor/angular/angular.min.js"></script> <script src="/vendor/angular-animate/angular-animate.min.js"></script> <script src="/vendor/angular-sanitize/angular-sanitize.min.js"></script> <script src="/vendor/angular-ui-router/release/angular-ui-router.min.js"></script> <script src="/vendor/ionic/js/ionic.min.js"></script> <script src="/vendor/ionic/js/ionic-angular.min.js"></script> <script src="/vendor/ionic/js/ionic.bundle.js"></script> <script src="/src/app/app.js"></script> <script src="/src/app/browse/browse.js"></script> <script src="/src/app/browse/routes.js"></script> <script src="/src/app/playlist/controllers.js"></script> <script src="/src/app/playlist/playlist.js"></script> <script src="/src/app/playlist/routes.js"></script> <script src="/src/app/playlists/controllers.js"></script> <script src="/src/app/playlists/playlists.js"></script> <script src="/src/app/playlists/routes.js"></script> <script src="/src/app/search/routes.js"></script> <script src="/src/app/search/search.js"></script> <script src="/templates-app.js"></script> <!-- endinject -->

templates-app.js

示例路由(browse / routes.js),模板在(function(module) { try { module = angular.module("templates-app"); } catch(err) { module = angular.module("templates-app", []); } module.run(["$templateCache", function($templateCache) { $templateCache.put("browse/templates/browse.tpl.html", "<ion-view view-title=\"Browse\">\n" + " <ion-content>\n" + " <h1>Browse</h1>\n" + " </ion-content>\n" + "</ion-view>\n" + ""); }]); })(); (function(module) { try { module = angular.module("templates-app"); } catch(err) { module = angular.module("templates-app", []); } module.run(["$templateCache", function($templateCache) { $templateCache.put("login/templates/login.tpl.html", //.......... 中(模板不包含在构建中,因此需要templates-app.js来缓存模板)

src/app/browse/templates/

这通常适用于通用function BrowseConfig($stateProvider){ $stateProvider .state('app.browse', { url: "/browse", views: { 'menuContent': { templateUrl: "browse/templates/browse.tpl.html" } } }) ; } angular.module('browse.routes', ['ui.router']) .config(['$stateProvider', BrowseConfig]) ; 项目,但出于某种原因,当我为项目加载ngbp时,localhost:8080应用仍会尝试angular模板文件(404)。为什么我的应用没有使用缓存?

1 个答案:

答案 0 :(得分:1)

你必须包含&#34; templates-app&#34;作为你的&#34; browse.routes&#34;中的依赖项模块,否则他不知道模板存在