2015-11-16 2 views
0

Я делаю приложение в Ruby on Rails и используя AngularJS. Мой application.js файлUI-view не изменен

//= require jquery 
//= require jquery_ujs 
//= require turbolinks 
//= require angular.min 
//= require angular-ui-router.min 


var app = angular.module("railsApp", ['ui.router']).config(function($stateProvider, $urlRouterProvider) { 
    $stateProvider 
     .state('home', { 
      url: '/', 
      templateUrl: 'home.html' 
     }) 
     .state('about', { 
      url: 'about', 
      templateUrl: 'about.html' 
     }); 
    $urlRouterProvider.otherwise('/'); 
}); 

app.controller("mainCtrl", function($scope) { 
    $scope.helloMsg = "Hello from test application"; 
}); 

индексная страница

<h1>Welcome#index</h1> 
<p>Find me in app/views/welcome/index.html.erb</p> 

{{helloMsg}}<br> 
<ui-view></ui-view> 

<a ui-sref="about">about</a> 

когда индексная страница загружается я вижу сообщение «Привет из тестового приложения» и в <ui-view></ui-view> замещенного содержимого шаблона, но я нажал о связи нового шаблона не загружается, а URL не изменяется в/о. в чем проблема? Спасибо и извините за мой английский

ответ

1

Пожалуйста, попробуйте, это исправит проблему с URL-адресом и предоставит запрашиваемые просмотры. Вы должны предоставить идеальный URL-адрес , чтобы представление было выполнено правильно.

var app = angular.module("railsApp", ['ui.router']).config(function($stateProvider, $urlRouterProvider) { 
    $stateProvider 
     .state('home', { 
      url: '/', 
      templateUrl: 'home.html' 
     }) 
     .state('/about', { 
      url: 'about', 
      templateUrl: 'about.html' 
     }); 
    $urlRouterProvider.otherwise('/'); 
}); 
+0

аааа ... бить меня по секундам :) – sameera207

+0

Большое спасибо, ваш совет помог исправить эту проблему! – motoroller

+0

Правильная конфигурация - это 'var app = angular.module (« railsApp », ['ui.router']). Config (функция ($ stateProvider, $ urlRouterProvider) { $ stateProvider .state ('home', { url : '/', templateUrl: 'home.html' }) .state ('о', { URL: '/ о', templateUrl: 'about.html' }); $ urlRouterProvider.otherwise ('/'); }); app.controller ("mainCtrl", function ($ scope) { $ scope.helloMsg = "Hello from test application"; }); ' – motoroller

Смежные вопросы