我最近在egghead.io上观看了一个视频,演示了如何进行多个命名视图(https://jsbin.com/nanifo/7/edit?html,js,output)。我有一个应用程序,我需要将某些参数传递给命名视图。如何将参数传递给同级ui路由器命名的视图?
组态我的应用程序如下图所示,可以将参数p1和p2,以“测试”中被传递指出:
angular.module("testapp",['ui.router'])
.config(function($stateProvider) {
.state("test", {
abstract: true,
url: "/test",
templateUrl: "app/template/testabstract.html",
controller: "TestAbstractController",
params: {
p1: null,
p2: null
}
})
.state("test.view1", {
url: "/view1",
templateUrl: "app/template/testview1.html",
controller: "TestView1Controller"
})
)};
见工作jsbin这里:https://jsbin.com/cedeqa/12/edit?html,js,output
原来,当我改变了国由于我把参数放在错误的地方,所以它没有工作:
angular.module("testapp",['ui.router'])
.config(function($stateProvider) {
.state("test", {
abstract: true,
url: "/test",
views: {
"[email protected]": { templateUrl: "app/template/footer.admin.html" },
"": {
templateUrl: "app/template/adminabstract.html",
controller: "AdminAbstractController",
params: {
p1: null,
p2: null
}
}
},
})
.state("test.view1", {
url: "/view1",
templateUrl: "app/template/testview1.html",
controller: "TestView1Controller"
})
)};
然而,实验(和重读该文档)告诉我哪里params真的需要去:https://jsbin.com/jijuca/4/edit?html,js,output
我想,我已经设法使它工作的方式,我想它...但是,我应该这样做吗?在“兄弟姐妹”之间共享数据有更好的方法吗?
HTML究竟发生了什么? –
感谢您的评论。我将用索引更新问题,并尝试将jsfiddle放在一起。这是我的灵感:https://egghead.io/lessons/angularjs-ui-router-named-views –
努力拼凑一个例子。一旦我得到一个工作jsbin方法#1的例子,并强烈尝试方法#2 http:// stackoverflow。com/questions/32514809 /从jsfiddle-in-jsbin中重新创建一个示例 –