1

过滤器“liveSearchEmployee()”不会在控制器的父范围内触发。它似乎被忽略了。

<input style="width:250px" type="text" ng-model="$$value$$"     ng-change="changeEmployee($$value$$)"    typeahead="(items.lastname + ', ' + items.firstname) for items in liveSearchEmployee($$value$$) "   typeahead-on-select="selectedPatientConsult($item)"    typeahead-min-length="3"   ng-hide="{{form.schema.readOnlyMode}}"    name="{{form.key}}" id="{{form.key}}" title="{{form.title}}"   ng-required="form.required" /> 
4

1 回答 1

2

对于“控制器的父范围”,我猜你的意思是它在表单之外的范围内?

该指令sf-schema有一个孤立的范围,因此外部的任何内容都不会被继承。

尝试将您需要的内容放在表单定义对象上,而不是为您的字段类型。

<input style="width:250px" type="text" ng-model="$$value$$"     
       ng-change="form.changeEmployee($$value$$)"  
       typeahead="(items.lastname + ', ' + items.firstname) for items in form.liveSearchEmployee($$value$$) "   
       typeahead-on-select="form.selectedPatientConsult($item)"    
       typeahead-min-length="3"   
       ng-hide="{{form.schema.readOnlyMode}}"    
       name="{{form.key}}" id="{{form.key}}" 
       title="{{form.title}}" ng-required="form.required" /> 

或者更好的是,将其包装在导出这些函数的指令中。

于 2015-03-15T19:56:50.970 回答