Lahat ng Kailangan Mong Malaman Tungkol sa Pabrika sa AngularJS

Magbibigay sa iyo ang artikulong ito ng isang detalyado at komprehensibong kaalaman tungkol sa Pabrika sa AngularJS at kung paano ito naiiba mula sa isang Serbisyo.

nagbibigay ng mga serbisyo na magagamit muli na mga bagay ng singleton. Maaari silang magamit upang ibahagi ang code sa mga application ng AngularJS ng mga gumagamit. Maaari din silang ma-injected sa mga direktiba, filter, at . Sa artikulong ito, mauunawaan namin ang pabrika sa AngularJS.

Ano ang Pabrika sa AngularJS?

Ang pabrika ay isang function na angular na ginagamit upang ibalik ang mga halaga. Ang isang halaga sa demand ay nilikha ng pabrika, tuwing kailangan ito ng isang serbisyo o tagakontrol. Kapag nalikha ang halaga, muling ginagamit ito para sa lahat ng mga serbisyo at tagakontrol.





Angular Logo - Pabrika sa AngularJS

Maaari naming gamitin ang pabrika upang lumikha ng isang serbisyo.



Pagkakaiba sa Pagitan ng Serbisyo at Pabrika

  • Maaaring tukuyin ang isang serbisyo sa sumusunod na paraan:

app.service ('FirstService', pagpapaandar () {

this.sayHola = function () {



console.log ('Hello')

}

})

Ang pamamaraan ng .service () ay kumukuha ng pangalan at pagpapaandar na tumutukoy sa serbisyo. Maaari namin itong iturok sa sumusunod na paraan:

app.controller ('AppController', pagpapaandar (FirstService) {

FirstService.sayHello () // log 'Hello'

})

  • Ang isang pabrika, sa kabilang banda ay maaaring tukuyin sa sumusunod na paraan:

app.factory ('FirstService', pagpapaandar () {

ibalik {

sayHola: function () {

console.log ('Hello')

}

}

})

Ang pabrika () ay isang paraan din na tumatagal ng isang pangalan at pag-andar na tumutukoy sa pabrika. Maaari namin itong i-injection sa parehong paraan tulad ng pag-iniksyon ng isang serbisyo. Ang pangunahing pagkakaiba sa pagitan ng isang serbisyo at pabrika ay namin ibalik ang isang bagay na literal sa kaso ng pabrika (sa halip na gamitin ito). Ang dahilan dito ay ang serbisyo ay isang function ng konstruktor samantalang ang isang pabrika ay hindi.

  • Para sa isang mas mahusay na pag-unawa, tingnan natin ang pagpapaandar ng pabrika ():

fpabrika ng unction (pangalan, factFn, ipatupad) {

bumalik provider (pangalan, {

$ get: ipatupad! == mali? ipatupadReturnValue (pangalan, factFn): factFn

})

}

Sa ibinigay na code sa itaas, kinukuha ang pangalan at ang naipasang pagpapaandar ng pabrika. Nagbabalik ito ng isang tagapagbigay na may parehong pangalan, kasama ang isang$ makuhapamamaraan (na kung saan ay ang pagpapaandar ng pabrika). Ito ay dahil sa kadahilanang tuwing hinihiling ang iniktor para sa isang tukoy na pagpapakandili, tatanungin ng iniksyon ang tagapagbigay para sa isang halimbawa ng serbisyong iyon sa pamamagitan ng pagtawag sa$ makakuha ()paraan

  • Sa pag-injection ng FirstService, ang mga pagpapaandar ng pabrika ay tinatawag na:

FirstServiceProvider. $ Get () // ibalik ang halimbawa ng serbisyo

ano ang printwriter sa java
  • Para sa code ng serbisyo:

serbisyo sa pagpapaandar (pangalan, tagapagbuo) {

ibalik ang pabrika (pangalan, ['$ injector', pagpapaandar ($ injector) {

ibalik ang $ injector.instantiate (tagapagbuo)

}])

}

Pag tumawag kamiserbisyo (), pabrika ()ang talagang tinawag. Ginagawa ito sa pamamagitan ng pagpasa ng isang pag-andar na humihiling sa iniksyon na magsimula ng isang bagay ng tagapagbuo. Sa mas simpleng mga termino, ang tawag sa serbisyo ay isang paunang natukoy na pabrika.

$ injector.instantiate ()tawag saBagay. Lumikha ()na may pagpapaandar ng tagapagbuo. Iyon ang dahilan kung bakit ito ay ginagamit sa mga serbisyo.

Halimbawa ng Pabrika sa JavaScript

var firstModule = angular.module ('firstModule', [])

firstModule.factory ('firstFactory', pagpapaandar () {

ibalik ang 'isang halaga'

})

firstModule.controller ('FirstController', pagpapaandar ($ saklaw, firstFactory) {

console.log (firstFactory)

})

Pag-iikot ng Mga Halaga sa Pabrika

Ang isang halaga ay maaaring ipasok sa pabrika sa pamamagitan ng sumusunod na pamamaraan:

var firstModule = angular.module ('firstModule', [])

firstModule.value ('numberValue', 29)

firstModule.controller ('FirstController', pagpapaandar ($ saklaw, numeroValue) {

console.log (numberValue)

})

TANDAAN: Dapat pansinin na ang halagang ginawa ng pagpapaandar ng pabrika ay na-injected, hindi ang pagpapaandar ng pabrika mismo.

Sa pamamagitan nito, natapos namin ang artikulong Pabrika na ito sa AngularJS. Inaasahan kong nakakuha ka ng pag-unawa sa kung ano ang eksaktong pabrika at kung paano ito naiiba mula sa isang serbisyo.

Cano ba ang ni Edureka, isang pinagkakatiwalaang kumpanya sa pag-aaral sa online na may isang network na higit sa 250,000 nasiyahan na mga nag-aaral na kumalat sa buong mundo. Angular ay isang balangkas ng JavaScript na ginagamit upang lumikha ng nasusukat, enterprise, at pagganap na mga client-side web application. Sa Angular na pag-aampon ng balangkas na mataas, ang pamamahala ng pagganap ng aplikasyon ay hindi hinihimok ng komunidad na hindi direktang pagmamaneho ng mas mahusay na mga oportunidad sa trabaho. Nilalayon ng Angular Certification Training na masakop ang lahat ng mga bagong konsepto sa paligid ng Pag-unlad ng Application ng Enterprise.