ale*_*zyl 1 javascript angularjs angular-ui-bootstrap
下面是我的角度代码我没有得到任何错误,模型打开但ModalInstanceCtrl函数cancel()和ok()不想工作,但是如果我完全像控制器那样在angularjs ui-bootstrap (http://angular-ui.github.io/bootstrap/#/modal)指令网站似乎有效.
我使用与网站上的示例相同的HTML,除了我已将内联模板提取到自己的文件,这是有效的.
软件包版本:Bootstrap 3.1.1,AngularJS 1.2.18,UI Bootstrap 0.11.0
我认为问题出在这里我包含控制器可能我没有正确地做到这一点
controller: this.ModalInstanceCtrl,
Run Code Online (Sandbox Code Playgroud)
主App app.js:
'use strict'
angular.module('myApp', ['ui.bootstrap', myAppControllers]);
Run Code Online (Sandbox Code Playgroud)
控制器controllers.js:
'use strict';
var myApp = angular.module('myAppControllers', []);
myApp.controller('ModalCtrl', ['$scope', '$modal', '$log', function($scope, $modal, $log) {
$scope.open = function (size) {
var modalInstance = $modal.open({
templateUrl: 'templates/myModalContent.html',
controller: this.ModalInstanceCtrl,
size: size,
}
});
modalInstance.result.then(function (selectedItem) {
$scope.selected = selectedItem;
}, function () {
$log.info('Modal dismissed at: ' + new Date());
});
};
}]);
myApp.controller('ModalInstanceCtrl', ['$scope', '$modalInstance', function($scope, $modalInstance) {
$scope.ok = function () {
$modalInstance.close();
};
$scope.cancel = function () {
$modalInstance.dismiss();
};
}]);
Run Code Online (Sandbox Code Playgroud)
好的,找到了解决方案:
在AngularJS UI Bootstrap Modal中调用另一个控制器
问题是被调用的控制器必须用单引号括起来:
controller: 'ModalInstanceCtrl',
Run Code Online (Sandbox Code Playgroud)
感谢Chris Southam
| 归档时间: |
|
| 查看次数: |
15446 次 |
| 最近记录: |