gpt4 book ai didi

javascript - 访问 url [material-ui + tabs] 时 Angular Ui Router 不加载 View

转载 作者:行者123 更新时间:2023-12-03 16:51:53 25 4
gpt4 key购买 nike

我正在使用 Angular + material-ui基本上我想通过不同的步骤执行入职流程,所以我使用 tabs 指令,每个指令都有不同的 ui-view

HTML:

<div ng-controller="TabsCtrl" class="content" ng-show="$root.loadingComplete">
<md-tabs md-selected="$root.selectedIndex" md-border-bottom class="md-primary">
<md-tab id="tab1" md-on-select="goTo('start')">
<md-tab-label>Welcome</md-tab-label>
<md-tab-template>
<md-content>
<div ui-view="vStart"></div>
</md-content>
</md-tab-template>
</md-tab>
<md-tab id="tab2" md-on-select="goTo('personal')">
<md-tab-label>Personal</md-tab-label>
<md-tab-template>
<md-content>
<div ui-view="vPersonal"></div>
</md-content>
</md-tab-template>
</md-tab>

这是我的路由配置:

angular.module('onboarding').config(['$stateProvider', '$urlRouterProvider',
function($stateProvider, $urlRouterProvider) {
$stateProvider
.state('start', {
url: '/:memberId',
views: {
vStart: {
templateUrl: 'views/start.html',
controller: 'StartCtrl'
}
}
})
.state('personal', {
url: '/:memberId/personal',
views: {
vPersonal: {
templateUrl: 'views/personal.html',
controller: 'PersonalCtrl'
}
}
})
...

goTo(状态)函数:

$scope.goTo = function(state) {
$state.transitionTo(state, $stateParams);
};

问题主要在于,如果我在 url localhost:9000/#/12345 打开“home”,它工作正常,我看到开始 View ,我可以切换到个人 View

$rootScope.selectedIndex = 1;
$state.transitionTo('personal', $stateParams);

但是,如果我直接从 localhost:9000/#/12345/personal 打开 url,什么也没有发生, View 没有加载, Controller 也没有加载。我有一个 console.log('start controller') 和相同的 console.log('personal controller') 来检查它们何时加载。

浏览器历史记录也不起作用,例如我转到起始页 locahost:9000/#/12345 然后单击按钮转到 localhost:9000/#/12345/personal 一切正常,但是如果我返回浏览器历史记录,url 是 localhost:9000/#/1245(正确)但是 View 完全是空的,没有 Controller 完全加载。

最佳答案

您的路由似乎已关闭。 UI 路由器将子状态的 url 附加到其父状态。

尝试删除标题 /:memberId:

.state('personal', {
url: '/personal',
views: {
vPersonal: {
templateUrl: 'views/personal.html',
controller: 'PersonalCtrl'
}
}
})

关于javascript - 访问 url [material-ui + tabs] 时 Angular Ui Router 不加载 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29374888/

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