仅供参考 - 我们正在使用Angular的数据绑定能力。我们不是试图将我们的应用程序开发为SPA,所以我不认为$ routeprovider是一个选项(如果我错了,请告诉我)。所以,这是问题所在。 当我使用ng-include将左侧导航加载为部分时,该部分加载正常,但下拉列表不起作用,因为父级作用域中的作用域数据不可用于部分页面,因为ng-include创建子作用域。所以,当我尝试使用ng-include从部分访问它时,我的数组,我需要传递的url id作为url参数是'undefined'。让它发挥作用的最佳方法是什么?
以下是导航中的下拉列表。
<select class="form-control-menu input-xs" ng-model="selectprogram" ng-change="onChange()" ng-disabled="isLoading"
ng-options="obj.name for obj in programList">
<option value="">PROGRAMS</option>
</select>
以下是调用的onchange事件。
$scope.onChange = function () {
window.location.href = '../View/programs.html?reportid=' + $scope.reportID + '&programid=' + $scope.selectprogram.id;
}
解决此问题的最佳方法是什么?
答案 0 :(得分:0)
您有几个选择:
在父作用域中使用对象作为共享属性。由于范围是原型继承的更新将保持不变。对于原始类型,情况并非如此。
在父作用域上定义onChange函数(由于原型继承也将保持不变)。
使用子范围内的$ scope。$ parent。不推荐/不良做法。
更深入的讨论: