我有一个控制器名称是ParentController,它有一个名为ddlState的下拉列表。如何在Angular JS中名为CityController的另一个控制器中访问此下拉列表
答案 0 :(得分:0)
使用工厂。
以下是简单数据交换的示例
app.factory('dataExchange', function() {
var ret = {
getData: getData,
setData: setData
};
var data = {};
return ret;
function getData() {
return data;
}
function setData(x) {
data = x;
}
});
只需将您的对象提供给父级控制器中的setData
,然后使用getData
答案 1 :(得分:0)
你有不同的方法来处理这个问题, 1.通过指令获得下拉总是更好。然后,您可以使用$ on函数在多个控制器中使用相同的指令进行多次下拉。 2.如果你想在所有的html和控制器中编写和重复下拉代码,你可以使用本地存储系统,所以一旦调用API结果并存储在本地存储(浏览器级别),其他控制器也没有调用API,您可以将数据附加到本地存储中。
其他方法是在$ rootScope变量中保留下拉值,您可以在任何需要的位置使用。 (但不推荐这种方式)