У меня есть сценарий, в котором свойство 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
это значение, которое будет свойство, которое приходит из БД (т.е. PropertyFromDB) и нг-модели должны связываться с PropertyFromDB вместо field1 , Итак, как будто я хочу оценить выражение внутри синтаксиса выражения ng-model, но я не могу этого сделать.
Благодаря
Спасибо. Это то, что я искал. В приведенном выше примере приведена версия моей фактической реализации, так что поле и значение отдельно относятся к области. В основном я пытался выполнить что-то вроде этого: - Но 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