angular.js - angular參數(shù)問題
問題描述
剛學(xué)習(xí)angular,很多地方不清楚,有個(gè)問題請教一下各位大神。有一個(gè)入口函數(shù)的run方法,代碼如下:
被紅框圈出來的部分run和config里面有些參數(shù),關(guān)于這些參數(shù)有兩個(gè)地方不清楚:問題1:這些參數(shù)是怎么確定的,為什么是這幾個(gè)而不是其它的?名字是固定的嗎,還是可以隨意起?問題2:這些參數(shù)是怎么傳遞過來的?
在具體的controller頁面也一樣有些參數(shù)不明白它是怎么傳遞的,代碼截圖如下:
和上面的兩個(gè)疑問是一樣的:問題1:參數(shù)怎么確定的?問題2:這些參數(shù)是怎么傳遞過來的?
問題解答
回答1:1.angular使用provide創(chuàng)建服務(wù)(即可注入的東西,說白了就是提供給其他模塊使用的), 一個(gè)服務(wù)可以定義一個(gè)provider, 無論何時(shí)你為一個(gè)服務(wù)定義了一個(gè)provider,這個(gè)provider的名字都是serviceProvider。在這里service是服務(wù)的名字。上圖種的$httpProvider, $stateProvider對(duì)應(yīng)的服務(wù)就是$http, $state... 這些angular內(nèi)置的service,底層都有一個(gè)serviceProvider來定義。
2.定義好了服務(wù),我們就需要在模塊中使用,使用服務(wù)首先需要引用對(duì)服務(wù)的依賴, 例如:app.controller(’xxController’, [’xxservice’, function(xxservice) {xxx}])這里xxController引用了xxservice,然后在模塊中使用。angular底層是使用inject來引用模塊依賴的服務(wù)。
圖二中的一些angular內(nèi)置服務(wù)($scope)不需要引入就可以使用,還有一個(gè)其他服務(wù)在使用之前需要先引用($http,$state...)可以參考這篇文章http://sentsin.com/web/663.html
回答2:你說的那些參數(shù)都是要注入的服務(wù),你需要那些服務(wù)就注入哪些,如果你的.run,.config,.controller等里面沒有用到這些服務(wù)也可以不用寫
相關(guān)文章:
1. mysql - 這條聯(lián)合sql語句哪里錯(cuò)了2. webpack - vuejs+java前后臺(tái)分離實(shí)現(xiàn)及部署問題3. docker容器呢SSH為什么連不通呢?4. docker鏡像push報(bào)錯(cuò)5. docker start -a dockername 老是卡住,什么情況?6. docker網(wǎng)絡(luò)端口映射,沒有方便點(diǎn)的操作方法么?7. mysqldb - MAC OS安裝MySQL-python總是失敗,請幫忙看看什么原因?8. javascript - ios 軟鍵盤彈出header被頂上去 定位失效 求大神解決9. javascript語法錯(cuò)誤10. javascript - JS繼承,如何避免父類原型的object類型屬性會(huì)受子類影響的情況;
