我已经过去了很多解决方案和教程,但没有找到正确的答案。所以我希望我不要做复制品,在这里给我们一个很好的小挑战
用
angular
ui router
问题
我有一些州,这些州有自己唯一的网址。我点击链接 (ui-sref( 状态和网址正确更改。但是,当我设置 url(例如"localhost:8080/user"(并单击我的键盘上的"输入"时。当前状态更改为某些"空状态",即使URL设置正确,也没有任何内容
法典
配置 :
'use strict';
angular.module('divohon-app').config(function ($stateProvider, $urlRouterProvider, $locationProvider) {
$locationProvider.html5Mode({
enabled: true,
requireBase: false
});
$stateProvider
.state("user-home", {
url: "user",
templateUrl: "/resources/html/template/user-home.html",
controller: "UserHome",
controllerAs: "uhCtrl"
})
.state("admin-home", {
url: "admin",
templateUrl: "/resources/html/template/admin-home.html",
controller: "AdminHome",
controllerAs: "ahCtrl"
})
.state("login", {
url: "login",
templateUrl: "/resources/html/template/login.html",
controller: "LoginController",
controllerAs: "lCtrl"
});
});
感谢您的任何帮助。 或参考。
您只需将每个状态的 url 属性分别更新为/user
、/admin
、/login
。它应该解决问题。
$stateProvider
.state("user-home", {
url: "/user",
templateUrl: "/resources/html/template/user-home.html",
controller: "UserHome",
controllerAs: "uhCtrl"
})
.state("admin-home", {
url: "/admin",
templateUrl: "/resources/html/template/admin-home.html",
controller: "AdminHome",
controllerAs: "ahCtrl"
})
.state("login", {
url: "/login",
templateUrl: "/resources/html/template/login.html",
controller: "LoginController",
controllerAs: "lCtrl"
});
上述更改后,本地主机:8080/用户应正确显示视图。