2013-10-02 4 views
5

Недавно я разделил приложение rails, которое у меня было, и создал переднюю часть как отдельное приложение с йоменом. По какой-то причине мои взгляды больше не вынести, например, мое приложение определяет:ui-router not rendering views

'use strict'; 

    var actionTrackApp = angular.module('actionTrackApp', [ 'ui.router', 'ngGrid']); 
    actionTrackApp.config(function($locationProvider) { 
     return $locationProvider.html5Mode(true); 
    }); 
    actionTrackApp.config(function($stateProvider){ 
     $stateProvider 
     .state("packageIndex", { 
      url: "/packages", 
      views: { 
      "main": { 
       controller: "ApplicationCtrl", 
       template: "<h1>Test</h1>" 
      }, 
      "": { 
       template: "<h1>Test2</h1>" 
      } 
      }, 
      resolve: { 
      test: function(){ 
       console.log("test") 
      } 
      } 
     }) 
    }); 

и в моем файле index.html у меня есть:

bodytag ng-app="actionTrackApp" ng-controller="ApplicationCtrl"> 
    your site or application content here<a href='/packages'>Package Index</a> 

    <div ng-view="main" class="container"></div> 
    <div ng-view=""></div> 
/bodytag 

Когда я щелкаю по ссылке свойство решительность действительно решить и Я вижу «тест» в консоли. Я попробовал установить $ routeChangeStart/успехи на контроллере applicaiton, но здесь не запускается и не запускается.

+0

Вы можете иметь только один 'нг-view' определена. – zsong

+0

Нет, вы можете использовать несколько просмотров. Он не работает с 1, хотя – jvans

+0

Я так не думаю. – zsong

ответ

4

Я посмотрел на свой код и нашел пару выдает

  1. ссылаться на взгляды UI-маршрутизатор, вы должны использовать директиву ui-view, не ng-view
  2. «» точка зрения определена неправильно - вы необходимо использовать действительное имя ключа, я изменил его на a и обновил ссылку в HTML

После того как я сделал эти изменения, все работает, как ожидалось здесь: http://plnkr.co/edit/lxAUGMqajwI461VKz8xo

пс: Я пошел вперед и использовать ui-sref по вашей ссылке, вместо жесткого кодирования/пакет URL ...

+0

Удивительно, что это было. Спасибо за вашу помощь. ui-sref, безусловно, правильный подход здесь. Я думаю, что "" действительно. Я играл с вашим плункером, и он по-прежнему работает с ui-view = "" и представлениями: {"": {template: "

Test2

"}}. – jvans

+0

Ага ... интересный, я думаю, я ошибался в пустой строке ... хорошо знать. – bendalton