【发布时间】:2015-07-03 21:47:20
【问题描述】:
我有这个控制器...
app.controller('UploadController', ['$scope', 'Upload', '$timeout', function ($scope, Upload, $timeout) {
$scope.$watch('files', function () {
$scope.upload($scope.files);
});
$scope.upload = function (files) {
if (files && files.length) {
for (var i = 0; i < files.length; i++) {
var file = files[i];
}
}
};
}]);
我将从files[i] 获得的温度分配给var file,因此我可以像预览一样在我的视图上显示温度。
<section ng-controller="UploadController">
<img ngf-src="files[0]" ng-show="files[0].type.indexOf('image') > -1">
</section>
但我真正需要的是在我的模态视图中显示温度。
<section ng-controller="UploadController">
<img ngf-src="files[0]" ng-show="files[0].type.indexOf('image') > -1">
</section>
模态视图具有相同的控制器和相同的“img”属性,但是当我显示模态视图时控制器RESTART,这是问题的重点,我需要学习如何我将变量的值保存在同一个控制器中,但在不同的视图中,无需重做操作。
基本上我需要:显示视图时,我的控制器不会重新启动。
【问题讨论】:
-
请显示您实际遇到问题的代码(即调用模态的代码)......如果您的意思是模态使用相同的,目前还不是很清楚 instance 控制器,或使用同一控制器类的另一个实例。
-
一旦您更改视图,您的控制器将重置。这些是路由器视图吗?
-
现在问题更清楚了,我希望能更好地理解
-
无论何时使用
ng-controller,您都会得到一个新的控制器副本。要在视图之间保留 var 或在某种意义上使它们成为global,您可以使用$rootScope或创建服务。
标签: javascript angularjs angularjs-controller modal-view