//app.js
var app = angular.module(app, ['ui.bootstrap']);
import AppCtrl from 'controller.js';
app.controller('appCtrl', AppCtrl);
//controller.js
export default function($scope, $uibModal) {
'ngInject';
$scope.openModal = function() {
var modalInstance = $uibModal.open({
templateUrl: 'template.html',
controller: ModalController
});
}
}
function ModalController () {
}
请问上面这种写法,ModalController是不是对全局空间造成了污染呢?是不是下面这种方式会比较好呢?
//app.js
app.controller('modalController', ModalController);
//controller.js
var modalInstance = $uibModal.open({
controller: 'modalController'
})
不会造成全局污染的,ModalController只在你的controller.js里可见。你都使用了ES6 module,为什么还有这种疑问呢?