angularJS ui-router url变化,但模板不渲染

url变成'account/signin',有请求模板 account.html和signin.html,但是没有渲染

index.html

<div ui-view="main">
</div>

app/account/account.html

<div ui-view="form">
</div>

app.js

$stateProvider
        .state('account', {
            url: '/account',
            abstract: true,
            views: {
                'main@': {
                    templateUrl: 'app/account/account.html',
                    controller: ['$state', function ($state) {
                        console.log('account');
                        $state.go('account.signin');
                    }]
                }
            }
        })
        .state('account.signin', {
            url: '/signin',
            views: {
                'form@account': {
                    templateUrl: 'app/account/signin.html',
                    controller: ['$state', function ($state) {
                        console.log('sign in ');
                    }]
                }
            }
        })

控制台会打印 'account',但不打印 'sign in'

补充:没有改变代码,刚刚测试,不打印 'account'

阅读 3.1k
1 个回答

<div ui-view="form" name="form@account">
</div>
可以吗

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题