app.js
我创建了多个具有相同控制器命名为vendorCtrl的视图,因为我们知道$ scope可以与特定控制器一起使用,我的问题是没有$ rootscope的帮助我如何在多个名为basic的视图之间共享数据,领域,身份
$stateProvider
.state('dashboard.vendor.add',{
views:{
'@': {
templateUrl: 'templates/vendor/forms/basic.html',
controller : 'vendorCtrl'
}
}
})
.state('dashboard.vendor.add.areas',{
views:{
'@': {
templateUrl: 'templates/vendor/forms/areas.html',
controller : 'vendorCtrl'
}
}
})
.state('dashboard.vendor.add.identity',{
views:{
'@': {
templateUrl: 'templates/vendor/forms/identity.html',
controller : 'vendorCtrl'
}
}
})
答案 0 :(得分:2)
有关范围继承的问题
<强> app.js 强>
$stateProvider
.state('dashboard.vendor.add',{
views:{
'@': {
templateUrl: 'templates/vendor/forms/basic.html',
controller : 'vendorCtrl'
}
}
})
.state('dashboard.vendor.add.areas',{
views:{
'@': {
templateUrl: 'templates/vendor/forms/areas.html',
controller : 'vendorCtrl'
}
}
})
<强>控制器强>
function vendorCtrl($scope) {
$scope.data= 'hello world';
}
<强> areas.html 强>
<input type-"text" ng-modal="data"/>
<label name="name">{{data}}</label>
<强> basic.html 强>
<label name="name">{{data}}</label>
在这种情况下,$ scope.data的值将显示在 areas.html 中,但无法在 basic.html 中显示值,尽管具有相同的控制器。 因为范围属性仅在我们的状态视图嵌套时才继承状态链。范围属性的继承与我们的状态嵌套无关,也与视图的嵌套有关。
答案 1 :(得分:0)
一方面,使用ui-router
,您可以使用the params property。
另一方面,您可以使用可以保存数据的简单(getter / setter?)service。