使用Scope中的值来命名ng-model?

时间:2013-09-19 13:58:40

标签: angularjs

假设我有一个如下所示的对象:

$scope.obj.foo = 'bar';

我希望输入字段具有ng-model ='bar'

如果我这样定义:

<input ng-model="{{obj.foo}}" />

我收到了javascript错误

如果我这样定义:

<input ng-model="obj.foo" />

ng-model是obj.foo,输入元素get用值栏填充。

我应该如何编写模板以实现这样工作的输入字段: 期望的结果:

<input ng-model="bar" />

但是从范围中提取ng-model-name而不是将其写入模板。

1 个答案:

答案 0 :(得分:1)

无论如何,你需要为模型使用一个对象,所以你可以这样做

<input ng-model="obj[myModelName]" />

然后使用myModelName"foo"插入"bar"