我有一個場景,其中ng-model屬性應該綁定到來自數據庫的作爲業務邏輯一部分的值。將ngModel綁定到表達式的值
爲了簡單起見,我已經創建這個example
function TodoCtrl($scope) {
$scope.field1 = "PropertyFromDB";
$scope.PropertyFromDB = "hello world";
}
<div ng-app>
<h2>ngModel BINDING EXAMPLE</h2><br/>
<div ng-controller="TodoCtrl">
<div ng-init="imod = field1">
<input type="text" ng-model="imod"></input>
</div>
</div>
</div>
在這個例子中,field1
是這將是來自DB(即PropertyFromDB)和NG-模型應綁定到PropertyFromDB代替FIELD1屬性的值。 因此,它就像我想評估ng模型的表達式語法中的表達式,但我無法這樣做。
感謝
謝謝。這就是我一直在尋找的東西。上面的例子是我的實際實現的剝離版本,所以字段和值分別在範圍上。基本上我試圖完成這樣的事情: - 但ng-model不允許,表達式的值通過所以我有采取ng-init路由。如果有更好的方法來實現這一點,請讓我知道。再一次感謝你。 – miztaken
@miztaken,你根本不需要'ng-init' - 可以用'this [field1]'完成。但是,爲什麼需要在範圍上設置正確的值,而不是創建一個對象(由@pankajparkar建議)(http://stackoverflow.com/a/29996113/968155)?如果你必須,爲什麼它的價值名稱本身取決於'field1'的值 - 爲什麼不靜態調用'value1'? –
是的,你是對的。爲了演示目的,我保留了範圍。我的業務邏輯決定了ngModel應該映射到哪個字段,例如,我已經在範圍級別編碼它,這就是我不能保持靜態的原因。感謝您的幫助。這是我將如何使用它http://jsfiddle.net/miztaken/ns0utq9b/ – miztaken