另一个控制器中的AngularJS调用方法[重复]
Posted
技术标签:
【中文标题】另一个控制器中的AngularJS调用方法[重复]【英文标题】:AngularJS Invoke method in another controller [duplicate] 【发布时间】:2015-02-19 19:46:33 【问题描述】:为了简化它。 我有 3 个带有项目列表的选项卡。 (国家、城市、街道)。在我的应用中,这些是不同的东西,但这是为了简化它。
在这 3 个选项卡中,我列出了所有计数、城市和街道。我为每个选项卡设置了单独的控制器。 CountryController、CityController 和 StreetController。
我想要达到的目标。 当用户在第一个选项卡中单击国家时,我不想调用 CitiesControlelr 中的函数,该函数将返回给定国家/地区的所有城市。当您点击 City 时,我想调用 StreetController 中的函数,该函数将返回该城市的所有街道。
如何实现控制器之间的这种“通信”?正确的制作方法是什么?
【问题讨论】:
【参考方案1】:您可以将一个对象放在所有控制器范围的父范围内,以存储选定的值。
<div ng-init="current = ">
<div ng-controller="CountryController as countryCtrl">
<select ng-options="country.code as country.label for country in countryCtrl.countries"
ng-model="current.country">
</select>
</div>
<div ng-controller="CityController as cityCtrl">
<select ng-options="city.code as city.label for city in cityCtrl.countriesFor(current.country)"
ng-model="current.city">
</selected>
</div>
</div>
【讨论】:
以上是关于另一个控制器中的AngularJS调用方法[重复]的主要内容,如果未能解决你的问题,请参考以下文章
同一页面上两个不同控制器的Angularjs双向绑定字段[重复]