我试图在没有模板的父状态下使用ui-router。我发现这个topic,其中说状态需要有一个模板。所以现在我的路由器配置看起来像:
$stateProvider
.state("customer", {
abstract: true,
url: "/customer",
template: ''
})
.state("application", {
url: "/application",
template: "<application>",
parent: "customer"
})
.state("company", {
url: "/company",
template: "<company>",
parent: "customer"
})
并在html中:
<ul>
<li>
<a ui-sref="application" href="#/customer/application">APPLICATION</a>
</li>
<li>
<a ui-sref="company" href="#/customer/company">COMPANY</a>
</li>
</ul>
运行此代码不会显示错误,但页面应用程序和公司不显示内容。提前谢谢。
答案 0 :(得分:0)
我认为,您需要提供ui-view
指令作为父状态的模板。您可以从html中删除href
,因为ui-sref
会为您执行此操作。
共:
$stateProvider
.state("customer", {
abstract: true,
url: "/customer",
template: '<div ui-view></div>'
})
.state("customer.application", {
url: "/application",
template: "<application></application>"
})
.state("customer.company", {
url: "/company",
template: "<company></company>"
})
你的HTML:
<ul>
<li>
<a ui-sref="customer.application">APPLICATION</a>
</li>
<li>
<a ui-sref="customer.company">COMPANY</a>
</li>
</ul>