AngularJSrequire

2017/11/12

Angularをrequireしてやったぜと意気揚々としていたのですが
angularという変数がグローバルに作られててなんでや、、、と思ってソースを追っていたら angularが結局グローバルに書き込んでいるみたいですね。。 https://github.com/angular/angular.js/blob/0b1b9112a341f7f798db915575fad63e0e59894e/src/Angular.js#L163

angular           = window.angular || (window.angular = {}),

つまりエントリーポイントの頭でrequireしてやればその他のところでは普通にangular.XXXが使えるということ。。

var myAngular = require(angular);
// つまりrequire(angular);だけでいい

console.log(myAngular); // Object {version: Object, callbacks: Object}
console.log(angular); // Object {version: Object, callbacks: Object}