gpt4 book ai didi

javascript - Angular : update scope inside scope

转载 作者:行者123 更新时间:2023-11-29 16:56:16 28 4
gpt4 key购买 nike

我有一个带有 2 个作用域的 Controller :

app.controller('search', function($scope) {
$scope.value1 = '';
$scope.value2 = 'Some text' + $scope.value1;
}

还有一个输入框:

<input type="text" ng-model="value1">

当我用输入字段更改 value1(有效)时,value2 不会更新。我怎样才能使它工作?

最佳答案

您可以在声明对象时遵循点规则。那会给你 prototypal inheritance事物。 param1param2 都将引用相同的对象副本。这样更新一个就会自动更新另一个。

标记

<input type="text" ng-model="param1.value">
<input type="text" ng-model="param2.value">

Controller

app.controller('search', function($scope) {
$scope.param1 = {value : ''};
$scope.param2 = $scope.param1;
}

Demo Plunkr

更新

如果你想将这些变量保持为原始变量,那么你应该像这里一样在某些事件上更新它们,你可以使用 ng-change 指令

标记

<input type="text" ng-model="value1" ng-change="value2 = value1 + ' something'">

或者您可以简单地将内联 html 代码移动到您的 Controller 函数以使其可测试。

标记

<input type="text" ng-model="value1" ng-change="changedValue()">

代码

$scope.changedValue = function(){
$scope.value2 = $scope.value1 + ' something'
}

关于javascript - Angular : update scope inside scope,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32081297/

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