我有一个“位置”页面,该页面上有一些内容,最终用户单击某个位置时,它将转到新页面。我正在尝试使用相同的控制器和范围将一些数据传递到新页面,但是在新页面上它放弃了范围?
HTML:
<h3 class="fc-primary" ng-click="canvasLocation(location.id)"><a href="/about-us/location">{{location.id}}</a></h3>
角度控制器:
$scope.canvasLocation = function(locationId) {
angular.forEach($scope.model.canvasLocations.response.locations,
function(value) {
if (value.id === locationId ) {
$scope.model.canvasLocationData.push(value);
var tempArry = [];
tempArry.push(value.institutionName);
tempArry.push(value.latitude);
tempArry.push(value.longitude);
tempArry.push(value.mondayOpen);
tempArry.push(value.mondayClose);
tempArry.push(value.tuesdayOpen);
tempArry.push(value.tuesdayClose);
tempArry.push(value.wednesdayOpen);
tempArry.push(value.wednesdayClose);
tempArry.push(value.thursdayOpen);
tempArry.push(value.thursdayClose);
tempArry.push(value.fridayOpen);
tempArry.push(value.fridayClose);
tempArry.push(value.saturdayOpen);
tempArry.push(value.saturdayClose);
tempArry.push(value.sundayOpen);
tempArry.push(value.sundayClose);
}
});
};
当我尝试在新页面上访问$scope.model.canvasLocationData
返回的[]
时
答案 0 :(得分:2)
您将离开已定义范围的页面,并且在加载新页面时不再可用。您有两种选择:
这是ui-router的URL,这对第一个项目符号很有用。在不知道您要使用哪种中间层或技术来提供内容的情况下,很难建议使用第二种方法(新页面)的更具针对性的方法。