gpt4 book ai didi

javascript - Angular js中同一 Controller 的两个实例

转载 作者:搜寻专家 更新时间:2023-10-31 23:22:53 24 4
gpt4 key购买 nike

我遇到了这个问题(我知道这不是一个好的做法)。我有一个具有分屏的 View 。在左侧您有一个输入字段,在右侧您可以看到输入字段值。双方都有相同的 Controller ,但我使用带有 ui-view 属性的状态提供程序。

index.html

<div class="col-sm-6" ui-view="left-side">
<div class="col-sm-6" ui-view="right-side">

app.js

$stateProvider.state('/',{
url: '/',
views:{
'left-side': {
templateUrl: 'leftside.html',
controller: 'testController'
},
'right-side': {
templateUrl: 'rightside.html'
controller: 'testController'
}
}

rightside.html

<div class="container">
<p>{{item}}</p>
</div>

leftside.html

<div class="container">
<input ng-model="item" />
</div>

并且在 testController.js

app.controller('testController, function($scope){
$scope.item = 'some text value';
});

我知道每个 ui-view 都有一个单独的(实例?)范围。如果我在左侧的输入字段中写一些东西,有没有办法在右侧进行更改?

最佳答案

您可以在 View 外声明controller 选项,这样只会初始化一次

代码

$stateProvider.state('/',{
url: '/',
controller: 'testController',
views:{
'left-side': {
templateUrl: 'leftside.html'
},
'right-side': {
templateUrl: 'rightside.html
}
}

关于javascript - Angular js中同一 Controller 的两个实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37211902/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com