gpt4 book ai didi

angularjs - 使用 angularjs ui-router 捕获任何 url

转载 作者:行者123 更新时间:2023-12-02 01:50:00 24 4
gpt4 key购买 nike

我在我的应用程序中使用了 Agularjs 和 ui-router。我需要捕获除“登录”和“/”之外的所有网址。所有的 url 都必须指向一个状态。

例如,网址会像

www.example.com/   // index
www.example.com/signin // signin page

www.example.com/cars
www.example.com/sports
www.example.com/politics

我目前的设置是

 .config(function ($stateProvider, $urlRouterProvider, $locationProvider) {
$stateProvider
.state('index', {
url: "/",
templateUrl: 'partials/main.html',
controller: 'MainCtrl'
})
.state('signin', {
url: "/signin",
templateUrl: 'partials/signin',
controller: 'MainCtrl'
})
.state("otherwise", {
url: "*path",
templateUrl: 'partials/detail',
controller: 'MainCtrl'
});

我也试过

$urlRouterProvider.otherwise(function($injector, $location) {
$location.path($location.path());
})

但它不会加载/显示页面。

最佳答案

您需要使用 $urlRouterProvider.otherwise 并路由到定义的状态,我为您的示例调用了 detail:

.config(function ($stateProvider, $urlRouterProvider) {
$urlRouterProvider.otherwise("/detail");

$stateProvider
.state('index', {
url: "/",
templateUrl: 'partials/main.html',
controller: 'MainCtrl'
})
.state('signin', {
url: "/signin",
templateUrl: 'partials/signin',
controller: 'MainCtrl'
})
.state("detail", {
url: "/detail",
templateUrl: 'partials/detail',
controller: 'MainCtrl'
});

关于angularjs - 使用 angularjs ui-router 捕获任何 url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23405838/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com