模板中的Angularjs动态模型
angularjs dynamic model in template
我需要创建动态输入,文本区域等。因此,对于每种输入类型,我都有一个单独的模板。因此,文本字段模板可以像这样:
<script type="text/ng-template" id="/input.html">
<input type="text" ng-model="model" />
</script>
,我想要达到的是这样的东西:
<div ng-include="" src="'/input.html'" ng-init="model = var1"></div>
<div ng-include="" src="'/input.html'" ng-init="model = var2"></div>
所以我可以用相同的模板创建文本字段,并为每个字段创建不同的模型。这实际上可以工作并获得传递的数据,但如果我在文本字段中键入一些东西,它不会应用到作用域变量
这里有一个小提琴来说明这一点:http://jsfiddle.net/uAm99/2/
你可以尝试用"angular directive way"来实现这个特性。它可以增强HTML标记,例如可重用模板(刚才在实现中提到)。下面是一个简单的例子:
HTML<body ng-app="myApp">
<div ng-controller="myCtrl">
<custom-input data="var1"></custom-input>
<custom-input data="var2"></custom-input>
{{var1}}
{{var2}}
</div>
</div>
JS
angular.module("myApp",[])
.controller("myCtrl",function($scope){
$scope.var1 = "foo";
$scope.var2 = "bar";
})
.directive("customInput",function(){
return {
restrict:'E',
scope: {
data:"="
},
template: '<input type="text" ng-model="data" />'
};
});
这是一个jsfiddle演示
希望对大家有所帮助
相关文章:
- 有没有比在app.js上绑定模块名称更好的方法来动态加载视图模型和视图以显示模态
- 如何为动态创建的文本区域中输入的值更新ng模型
- EmberJS-适用于各种模型的适配器动态名称空间
- 在extJS 4.2中,有没有一种方法可以将模型值动态绑定到表单
- 为各种模型动态创建隐藏的表单字段(MVC 4)
- 具有ng重复的动态ng模型
- ng重复中的动态ng模型
- 如何在打开模型时动态加载控制器文件
- 如何在角度 2 中向动态加载的子组件提供父组件的模型
- 在Waterline中动态定义和获取模型
- 构建淘汰模型并动态查看,不设置单选按钮
- 角度动态 ng 模型名称
- 通过json动态绑定作用域到ng模型
- 如何使用ng重复和ng模型将动态值绑定到输入
- Ember数据动态模型未加载到存储中
- 动态模型操作
- vue.js中的动态v模型
- 在Angular中使用ng-repeat进行动态模型和脏检查
- 接受动态模型的Angular JS函数
- 模板中的Angularjs动态模型