另外,是否有类似于main.js的那种js,里面可以去定义全局变量。例如var http = "www.xxxx.com/"
,可以使得其他的Ctrl.js,都可以调用。
高洛峰2017-05-15 16:55:43
아이디어가 틀렸네요, angular
中不需要定义全局变量。你的数据应该通过service
, factory
, provider
제공해드리겠습니다.
그리고 이러한 것들은 종속성이 주입될 수 있으므로 전역 변수가 전혀 필요하지 않습니다
某草草2017-05-15 16:55:43
@leftstick 말이 맞습니다. AngularJS는 종속성 주입 스타일을 사용하여 전체 애플리케이션 프레임워크를 구조화하는 것이 가장 좋지만 전역 변수를 선언하는 것이 아니라 서비스로 만드는 것이 가장 좋습니다. 이렇게 하면 많은 문제를 피할 수 있습니다:
ACtrl
에서 전역 변수 window.a
를 정의하는 경우(예를 들어 BCtrl
에서 사용하려는 경우) 다음을 확인해야 합니다. ACtrl
은 BCtrl
보다 먼저 실행되는데, 이는 종종 구현하기 어렵거나 심지어 논리적으로 혼란스럽기까지 합니다. ACtrl
中定义了一个全局变量window.a
,比如你想在BCtrl
中使用它,那么你需要保证ACtrl
在BCtrl
之前得到执行,这往往是不好实现,甚至逻辑混乱的。在Angular中,最合理的办法是把a
做成一个aService
,注入到ACtrl
和BCtrl
a
를 aService
로 만들고 이를 ACtrl
및 BCtrl
에 삽입하는 것입니다. 중에. 서비스를 정의하는 방법과 모듈, 서비스, 공장 및 공급자 간의 관계는 다음 블로그를 참조할 수 있습니다.
http://harttle.github.io/2015/06/07/angular-module.html🎜