角度设置ui从另一个控制器中选择默认值
Angular set ui-select default from another controller
我正在为一个简单的任务条目创建一个编辑页面。
其中一个字段是使用ui select生成一个下拉列表,其中列出了可以分配任务的"项目"。
我遇到的问题是表单被包装在ng-controller="getTask as vm"中但是,ui选择字段被包装在ng-controller="Projects as vm"中以生成列表。
我试图从getTask控制器设置项目字段的默认值,但我不能这样做,因为它超出了范围。
使$select.selected可从getTask控制器更改的最佳方法是什么?
这是我正在处理的代码:
<form ng-controller="getTask as vm">
<input type="text" name="task_name" value="{{ vm.task.name }}" />
<div ng-controller='Project as vm' class="form-group select">
<ui-select ng-model="selectedItem">
<ui-select-match>
<span ng-model="vm.formData.prject_id" ng-change="vm.setProject($select.selected.id)" ng-bind="$select.selected.project_name"></span>
<input type="hidden" name="project_id" value="{{ $select.selected.id }}">
</ui-select-match>
<ui-select-choices repeat="project in (vm.projects | filter: $select.search) track by project.id">
<span ng-bind="project.project_name"></span>
</ui-select-choices>
</ui-select>
</div>
</form>
希望这是有道理的。如有任何帮助,我们将不胜感激。
查看$rootScope。它是通过所有应用程序定义的范围,在其中定义"选定"的对象是实现这一点的最简单方法。
https://docs.angularjs.org/api/ng/service/$rootScope
请注意,有些人会指责在大型应用程序中过度使用rootScoped对象,因为它可能会变得混乱。
相关文章:
- 如何更改<选择>使用angularJS从控制器获得的值
- 事件的ExtJS控制器选择器
- 控制器和支持路由之间的角度保持选择
- 我可以将控制器注入到这个 Formly 选择框对象中吗?
- 将域类id返回到由单选按钮选择的控制器
- AngularJS vs MVC控制器选择什么
- 如何将下拉选择值传递给控制器中的按钮单击功能
- 无法在 AngularJS 控制器中分配下拉选择值
- 在 AngularJS 中,用于选择不同控制器的选项 - 如何刷新
- 选择时获取下拉值,并将其传递给控制器,而无需刷新页面
- 未在选择标记下拉列表中选择以隐藏其他输入元素的嵌套控制器
- 使用 KODataTable MVC 选择表中的项目时触发控制器操作
- ng-switch-when:它是否每次重新创建新控制器并在选择不同步骤时删除以前的数据
- 当选择框更改调用控制器方法时
- 选择基于属性AngularJS的控制器
- 如何使用钛合金在控制器中获取选择器值
- UI引导日期选择器不调用内联控制器作用域上的函数
- 角度设置ui从另一个控制器中选择默认值
- 引导导航面板和日期选择器,并用javascript调用C#控制器
- 与其他控制器共享选定的选择