当我尝试使用 $location.path() 时,URL 发生了变化,但是我传递给 .path 的任何内容都会附加到当前 URL 上。 我希望当我执行 addShow() 函数时,能够转到 index.html 页面,这是我的主页。 请帮忙解决。
URL 的更改如下:
http://localhost:8080/add
当我执行 addShow() 函数时,它会更改为:
http://localhost:8080/add#/
我希望它能够转到我的主页。
angular.module('app').controller("MainController",['$location', function($location) {
var vm = this;
vm.title = 'TV Show';
vm.searchInput = '';
vm.shows = [{
title: 'Game of Thrones',
year: 2011,
favorite: true
}, {
title: 'Walking Dead',
year: 2010,
favorite: false
}, {
title: 'Firefly',
year: 2002,
favorite: true
}, {
title: 'Banshee',
year: 2013,
favorite: true
}, {
title: 'Greys Anatomy',
year: 2005,
favorite: false
}];
vm.orders = [{
id: 1,
title: 'Year Ascending',
key: 'year',
reverse: false
}, {
id: 2,
title: 'Year Descending',
key: 'year',
reverse: true
}, {
id: 3,
title: 'Title Ascending',
key: 'title',
reverse: false
}, {
id: 4,
title: 'Title Descending',
key: 'title',
reverse: true
}];
vm.order = vm.orders[0];
vm.new = {};
vm.addShow = function() {
vm.shows.push(vm.new);
console.log(vm.shows);
vm.new = {};
$location.path("/");
};
}]);
我的配置函数如下:
(function() {
"use strict";
angular
.module("app")
.config(function($routeProvider, $locationProvider) {
//$locationProvider.html5Mode(true);
$routeProvider
.when('/', {
templateUrl: 'list.html',
controller: 'MainController',
controllerAs: 'main',
})
.when('/add', {
templateUrl: 'add.html',
controller: 'MainController',
controllerAs: 'main',
})
;
});
})();