ui-Router templateUrl не может найти шаблон $templateCache в app-release.js
Я использую Gulp-angular-templatecache
кэшировать мои HTML-шаблоны в templates-cache.js, а затем я использую Gulp-browsify
скомпилировать мой файл app.js для создания файла app-release.js, который содержит весь код из файлов app.js и templates-cache.js.
app.js включает в себя все зависимости, включая сгенерированный файл templates-cache.js, но ui.route
не может вызвать HTML-файлы на templateUrl
Я следовал угловой инструкции по адресу https://docs.angularjs.org/api/ng/service/$templateCache, но все еще не могу найти проблему.
app.js
import angular from "angular";
import uiRouter from "@uirouter/angularjs";
let template = require("../../templates-cache.js");
let app = angular.module("app", [uiRouter]);
app.config(function ($stateProvider) {
let Default = {
name: "default",
url: "/",
templateUrl: "home.html"
};
let Home = {
name: "home",
url: "",
templateUrl: 'home.html'
};
$stateProvider.state(Home);
});
приложение-release.js
app.config(function ($stateProvider) {
var Default = {
name: "default",
url: "/",
templateUrl: "home.html"
};
var Home = {
name: "home",
url: "",
templateUrl: 'home.html'
};
$stateProvider.state(Home);
});
},{"../../templates-cache.js":77,"@uirouter/angularjs":1,"angular":75}],77:[function(require,module,exports){
'use strict';
angular.module('template', []).run(['$templateCache', function ($templateCache) {
$templateCache.put('home.html', '\n<div class="largeText">My Angular App</div>\n\n');
}]);
Ошибка в Chrome Ошибка в Chrome
Спасибо вам за помощь:)
1 ответ
Решение
Проблема здесь. Я не делаю инъекцию template
это генерируется gulp-angular-templatecache.
исправлять
let app = angular.module("app", [uiRouter, "template"]);