Директива AngularJS templateUrl не загружается в поле зрения

0

Поэтому я использую ui-view, чтобы направить меня к частичной.

//route.provider.js

(function() {
'use strict';

angular
    .module('app')
    .provider('RouteService', RouteService);

RouteService.$inject = ['$stateProvider', '$urlRouterProvider'];
function RouteService ($stateProvider, $urlRouterProvider) {
    var service = {};

    this.$get = function() { return service; };

    this.initialize = function() {
        $urlRouterProvider.otherwise('/login');

        $stateProvider
            .state('home', {
                url: '/home',
                controller: 'HomeController',
                templateUrl: 'home/home.view.html',
                controllerAs: 'viewModel'
            })
            .state('login', {
                url: '/login',
                controller: 'LoginController',
                templateUrl: 'login/login.view.html',
                controllerAs: 'viewModel'
            })

            //TODO Impliment the following partial pages...

            .state('gensim', {
                url: '/gensim',
                templateUrl: 'general-simulation/simulation.view.html',
                controller: 'TabsController',
                controllerAs: 'tabs'
            })
            <...more routes...>
    }
}
})();

Проблема, с которой я сталкиваюсь, - это когда она

// general-simulation/simulation.view.html

Я бы хотел, чтобы он использовал настраиваемую директиву для вставки большего количества html в страницу. Внутри simulation.view.html у меня есть это.

<div class="container">
   <div class="row center">
        <div class="col-xs-12">
            <h1>General Simulation</h1>
            <gs-tabs><h1>TEST!!!!</h1></gs-tabs>
        </div>
    </div>
</div>

Директива построена в

// tabs.directives.js
(function(){
'use strict';

angular
    .module('app')
    .directive('gsTabs', gsTabs);

function gsTabs () {
    return {
        restrict: "E",
        templateURL: 'tabs.view.html'
    };
}

})();

Наконец, мой tabs.view.html выглядит так.

<h1>YOU HAVE ENTERED TABS PARTIAL</h1>

Когда я перехожу к странице, на которой отображается симуляция. Посмотреть все, что я вижу, это:

Общее моделирование

КОНТРОЛЬНАЯ РАБОТА!!!!

Так что я делаю неправильно здесь. Я проверил для camelCasing, и страница не отображается в сообщениях об ошибках. Любая помощь будет принята с благодарностью!

Обновить:

Я просмотрел сетевые вызовы в инструментах chrome dev. Загружается файл simulation.view.html, но tabs.view.html - нет.

URL-адрес запроса: http://sdc-stagt01/AngularJS/general-simulation/simulation.view.html Метод запроса: код состояния GET: 200 OK Удаленный адрес: 10.19.8.96: 80

Файловая подструктура:

/general-simulation/tabs/tabs.controller.js
/general-simulation/tabs/tabs.directives.js
/general-simulation/tabs/tabs.view.html/general-simulation/simulation.view.html

  • 0
    Изучите запросы xhr, сделанные в инструментах разработки браузера, чтобы увидеть, правильно ли выполнен запрос, и его статус и тело ответа. Кажется странным, что все остальные шаблоны находятся в каталогах, но tabs не
  • 0
    попробуйте использовать ng-include вместо вашей директивы gsTabs и, как сказал @charlietfl, проверьте свой путь к шаблону
Показать ещё 1 комментарий

3 ответа

3
Лучший ответ

ставить комментарий как ответ

изменить templateURL на templateUrl

  • 0
    провел 4 часа, и это исправило это ... человек !!!!!
  • 0
    Я иногда чокнутый идиот. Спасибо, приятель.
1

Таким образом, комментарий антре был большой помощью. Это привело к тому, что хром-разработчик начал выплевывать ошибки.

charlietfl Был на правильном пути с упоминанием моей файловой структуры. Мне нужно было изменить мою директиву так:

templateUrl: 'general-simulation/tabs/tabs.view.html'

Спасибо!

  • 0
    Спасибо, это работало для меня, так как до того, как я пытался получить доступ к своему представлению с помощью: templateUrl: './dashboard.component.html' , но это работало, когда я добавил родительскую папку: templateUrl: 'app/dashboard.component.html' , Я использовал руководство по угловой маршрутизации в документации. Знаете ли вы, почему он не будет работать с простой ссылкой на «./name.of.file.html»?
0

У вас здесь опечатка. templateUrl не templateURL

function gsTabs () {
    return {
        restrict: "E",
        templateURL: 'tabs.view.html' // change this to templateUrl
    };
}

Ещё вопросы

Сообщество Overcoder
Наверх
Меню