また、main.jsと同様にグローバル変数を定義できるjsはありますか?たとえば、var http = "www.xxxx.com/" は他の Ctrl.js を呼び出し可能にすることができます。
var http = "www.xxxx.com/"
认证0级讲师
その考えは間違っています、angular中不需要定义全局变量。你的数据应该通过service, factory, providerそれを提供します。 そして、これらは依存関係を注入できるため、グローバル変数はまったく必要ありません
angular
service
factory
provider
$rootScope はオブジェクトであり、$rootScope.xxx='';
@leftstick は正しいです。AngularJS は依存関係注入スタイルを使用してアプリケーション フレームワーク全体を構造化します。グローバル変数を宣言するのではなく、サービスにすることが最善です。こうすることで多くの問題を回避できます:
ACtrl
window.a
BCtrl
在Angular中,最合理的办法是把a做成一个aService,注入到ACtrl和BCtrl
a
aService
リーリー
angularjs2 がリリースされました
その考えは間違っています、
angular
中不需要定义全局变量。你的数据应该通过service
,factory
,provider
それを提供します。そして、これらは依存関係を注入できるため、グローバル変数はまったく必要ありません
$rootScope はオブジェクトであり、$rootScope.xxx='';
の形式でグローバル変数にバインドできます。@leftstick は正しいです。AngularJS は依存関係注入スタイルを使用してアプリケーション フレームワーク全体を構造化します。グローバル変数を宣言するのではなく、サービスにすることが最善です。こうすることで多くの問題を回避できます:
ACtrl
でグローバル変数window.a
を定義する場合、それをBCtrl
で使用する場合は、次のことを確認する必要があります。ACtrl
はBCtrl
の前に実行されますが、これは多くの場合実装が難しく、論理的に混乱を招くことさえあります。ACtrl
中定义了一个全局变量window.a
,比如你想在BCtrl
中使用它,那么你需要保证ACtrl
在BCtrl
之前得到执行,这往往是不好实现,甚至逻辑混乱的。在Angular中,最合理的办法是把
Angular では、最も合理的な方法は、a
做成一个aService
,注入到ACtrl
和BCtrl
a
をaService
にし、それをACtrl
とBCtrl
に注入することです。の間で。リーリー
angularjs2 がリリースされました