我在Ruby on Rails中使用AngularJS进行应用程序。 我的application.js文件是
//= 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>
当加载索引页面时,我看到消息&#34;来自测试应用程序的问候&#34;并转换为<ui-view></ui-view>
替换模板内容,但我点击链接新模板未加载,网址未更改为/ about。问题是什么?谢谢,对不起我的英文
答案 0 :(得分:1)
请尝试此操作来修复您的网址问题并呈现所请求的视图。您必须提供完美的网址 因此,视图将被计算出来。
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('/');
});
答案 1 :(得分:0)
根据ui router readme,尝试更改url: 'about' to
网址:'/ about'