Javascript 在angularjs中,选择不同控制器的选项-如何刷新?

Javascript 在angularjs中,选择不同控制器的选项-如何刷新?,javascript,angularjs,angularjs-scope,Javascript,Angularjs,Angularjs Scope,有两个不同的控制器,一个用于语言langCntl,另一个用于单词wordCntl 在wordCntl记录中有一个名为ln的属性。ln使用ng select以表格形式显示,其中ngOptions基于langCntl控制器中的记录 当langCntl中的记录更改时,如何在wordCntl中选择ln刷新 langMod.js index.html 我很感兴趣: 更改langCntl.langs后,wordCntl.langs仍然是一个空数组。 在ngoptions中,是否有直接使用langCntl中记

有两个不同的控制器,一个用于语言langCntl,另一个用于单词wordCntl

在wordCntl记录中有一个名为ln的属性。ln使用ng select以表格形式显示,其中ngOptions基于langCntl控制器中的记录

当langCntl中的记录更改时,如何在wordCntl中选择ln刷新

langMod.js index.html 我很感兴趣:

更改langCntl.langs后,wordCntl.langs仍然是一个空数组。 在ngoptions中,是否有直接使用langCntl中记录的方法? 参考angualrjs sdk:

将事件名称向下分派给所有子作用域及其子作用域,通知侦听器上已注册的ng.$rootScope.Scope$

事件生命周期从调用$broadcast的作用域开始。侦听此作用域上的name事件的所有侦听器都会收到通知。之后,事件传播到当前作用域的所有直接和间接作用域,并沿途调用所有已注册的侦听器。无法取消该事件


如果您从doc发布了一些内容,请使用“>”将其包装起来,以表明这不是您的文字。这很酷,但是让select刷新的实质是什么呢?您可以向select元素添加一个ng change event lisentner。 var langMod = angular.module('langMod', ['ngResource']); langMod.controller('langCntl',function($scope,$http) { $scope.langs = []; $scope.reset = function() { $http.get( '/lang.jsn').success( function(data) { console.log( 'http.success: data='+data ); $scope.langs = angular.copy($scope.origs); }); }; $scope.reset(); }); langMod.controller('wordCntl',function($scope) { var langElem = document.querySelector("[ng-controller='langCntl']"); $scope.langs = angular.element(langElem)).scope().langs; $scope.rcd = { ln: 'en', word: '?' }; }); <html lang='en' ng-app='langMod' > <body> <ng-form ngForm='abc' ng-controller='wordCntl' > <select ng-model="rcd.ln" ng-options="c.lang as c.name for c in langs"> </ng-form> </body> </html>