更新範圍我有2個範圍的控制器:角:內部範圍
app.controller('search', function($scope) {
$scope.value1 = '';
$scope.value2 = 'Some text' + $scope.value1;
}
和輸入字段:
<input type="text" ng-model="value1">
當我改變與輸入字段值1(工作),值2不會更新。我該如何做這項工作?
更新範圍我有2個範圍的控制器:角:內部範圍
app.controller('search', function($scope) {
$scope.value1 = '';
$scope.value2 = 'Some text' + $scope.value1;
}
和輸入字段:
<input type="text" ng-model="value1">
當我改變與輸入字段值1(工作),值2不會更新。我該如何做這項工作?
您可以在聲明對象時遵循點規則。那會給你prototypal inheritance的事。 param1
& param2
將引用同一個對象副本。所以更新一個會自動更新另一個。
標記
<input type="text" ng-model="param1.value">
<input type="text" ng-model="param2.value">
控制器
app.controller('search', function($scope) {
$scope.param1 = {value : ''};
$scope.param2 = $scope.param1;
}
更新
如果你想保持這些變量作爲基本那麼你應該向他們介紹一些事件一樣在這裏您可以通過使用ng-change
指令
標記
<input type="text" ng-model="value1" ng-change="value2 = value1 + ' something'">
做,或乾脆你可以內嵌移動html代碼給你的控制器功能,使其可測試。
標記
<input type="text" ng-model="value1" ng-change="changedValue()">
代碼
$scope.changedValue = function(){
$scope.value2 = $scope.value1 + ' something'
}
只有對象是通過參考傳中JS - 不原語。 – tymeJV