ui.router改变状态,但ui-view没有显示任何内容?

时间:2014-07-05 10:43:29

标签: javascript angularjs angular-ui angular-ui-router angularjs-routing

虽然状态正在成功改变,但我无法更新ui-view:

HTML

<a ui-sref="promo.foo">Foo state</a>
<a ui-sref="promo.bar">Bar state</a>

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

的JavaScript

$urlRouterProvider.otherwise("/");

$stateProvider
    .state('promo', {
               url: "/",
               abstract: true
           })
    .state('promo.foo', {
               url: "promo/foo",
               template: "'<h3>Foo</h3>'",
               controller: function($scope) {
                   $scope.value = 'foo';
               }
           })
    .state('promo.bar', {
               url: "promo/bar",
               template: "'<h3>Bar</h3>'",
               controller: function($scope) {
                   $scope.value = 'bar';
               }
           })

Plnkr(带引导样式)

我也尝试将ui-view设置为等于特定状态;并从我的$scope动态更改其RHS。

2 个答案:

答案 0 :(得分:3)

由于您正在尝试创建嵌套视图,因此home状态应该包含一个带有ui-view-element的模板。 此外,模板中还有双引号和单引号

template: "'<h3>Foo</h3>'"

这是Plunker你的想法吗?

答案 1 :(得分:1)

为您的抽象状态提供一个模板,其中包含您的子状态将在其中呈现的内容......例如http://scotch.io/tutorials/javascript/angular-routing-using-ui-router