angular.js - angular參數問題
問題描述
剛學習angular,很多地方不清楚,有個問題請教一下各位大神。有一個入口函數的run方法,代碼如下:
被紅框圈出來的部分run和config里面有些參數,關于這些參數有兩個地方不清楚:問題1:這些參數是怎么確定的,為什么是這幾個而不是其它的?名字是固定的嗎,還是可以隨意起?問題2:這些參數是怎么傳遞過來的?
在具體的controller頁面也一樣有些參數不明白它是怎么傳遞的,代碼截圖如下:
和上面的兩個疑問是一樣的:問題1:參數怎么確定的?問題2:這些參數是怎么傳遞過來的?
問題解答
回答1:1.angular使用provide創建服務(即可注入的東西,說白了就是提供給其他模塊使用的), 一個服務可以定義一個provider, 無論何時你為一個服務定義了一個provider,這個provider的名字都是serviceProvider。在這里service是服務的名字。上圖種的$httpProvider, $stateProvider對應的服務就是$http, $state... 這些angular內置的service,底層都有一個serviceProvider來定義。
2.定義好了服務,我們就需要在模塊中使用,使用服務首先需要引用對服務的依賴, 例如:app.controller(’xxController’, [’xxservice’, function(xxservice) {xxx}])這里xxController引用了xxservice,然后在模塊中使用。angular底層是使用inject來引用模塊依賴的服務。
圖二中的一些angular內置服務($scope)不需要引入就可以使用,還有一個其他服務在使用之前需要先引用($http,$state...)可以參考這篇文章http://sentsin.com/web/663.html
回答2:你說的那些參數都是要注入的服務,你需要那些服務就注入哪些,如果你的.run,.config,.controller等里面沒有用到這些服務也可以不用寫
相關文章:
1. javascript - js中遞歸與for循環同時發生的時候,代碼的執行順序是怎樣的?2. 小程序怎么加外鏈,語句怎么寫!求救新手,開文檔沒發現3. python - linux怎么在每天的凌晨2點執行一次這個log.py文件4. php如何獲取訪問者路由器的mac地址5. android - 鍵盤遮擋RecyclerView6. 如何分別在Windows下用Winform項模板+C#,在MacOSX下用Cocos Application項目模板+Objective-C實現一個制作游戲的空的黑窗口?7. javascript - jQuery each 方法第三個參數args 如何解釋?8. javascript - 在 vue里面用import引入js文件,結果為undefined9. java - new + 類名,一定需要申明一個對象嗎?10. javascript - ...mapGetters和...mapState獲取到的state,怎么拿來在methods中操作?
