首页 > 关于angularjs的全局空间污染的问题

关于angularjs的全局空间污染的问题

//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,为什么还有这种疑问呢?


https://github.com/xufei/blog/issues/17

【热门文章】
【热门文章】