Све што треба да знате о фабрици у АнгуларЈС



Овај чланак ће вам пружити детаљно и свеобухватно знање о Фацтори у АнгуларЈС и како се то разликује од услуге.

пружа услуге које су једнократни објекти за вишекратну употребу. Они се могу користити за дељење кода између корисничких апликација АнгуларЈС. Такође се могу убризгати у директиве, филтере и . У овом чланку ћемо разумети фабрику у АнгуларЈС.

Шта је Фацтори у АнгуларЈС?

Фацтори је угаона функција која се користи за враћање вредности. Вредност на захтев ствара фабрика кад год то затреба сервису или контролору. Једном када се вредност створи, она се поново користи за све услуге и контролере.





Ангулар Лого - Фабрика у АнгуларЈС

Можемо да користимо фабрику за стварање услуге.



Разлика између услуге и фабрике

  • Услуга се може дефинисати на следећи начин:

апп.сервице ('ФирстСервице', фунцтион () {

тхис.саиХола = фунцтион () {



цонсоле.лог ('Здраво')

}

})

Метода .сервице () узима име и функцију која дефинише услугу. Можемо га убризгати на следећи начин:

апп.цонтроллер ('АппЦонтроллер', функција (ФирстСервице) {

ФирстСервице.саиХелло () // записује 'Здраво'

})

  • С друге стране, фабрика се може дефинисати на следећи начин:

апп.фацтори ('ФирстСервице', фунцтион () {

ретурн {

саиХола: фунцтион () {

цонсоле.лог ('Здраво')

}

}

})

фацтори () је такође метода која узима име и функцију која дефинише фабрику. Можемо да га убризгамо на исти начин као убризгавање услуге. Главна разлика између услуге и фабрике је та што ми врати литерал објекта у случају фабрике (уместо да се користи). Разлог је тај што је услуга конструкторска функција, а фабрика није.

  • За боље разумевање, погледајмо фабричку функцију ():

фунцтион фацтори (име, фацтФн, спровести) {

повратни добављач (име, {

$ гет: принудно! == нетачно? принудитиРетурнВалуе (име, фацтФн): фацтФн

како се користи класа скенера

})

}

У горе наведеном коду потребно је име и прослеђена фабричка функција. Враћа добављача са истим именом, заједно са$ гетметода (што је фабричка функција). То је из разлога што кад год се од ињектора затражи одређена зависност, ињектор од добављача тражи инстанцу те услуге позивањем$ гет ()метода.

  • Када се убризга ФирстСервице, фабричке функције се зову:

ФирстСервицеПровидер. $ Гет () // враћа инстанцу услуге

  • За сервисни код:

функција функције (име, конструктор) {

ретурн фацтори (име, ['$ ињектор', функција ($ ињектор) {

ретурн $ ињецтор.инстантиате (конструктор)

}])

}

експлицитно преливање типа у јави

Кад зовемоуслуга (), фабрика ()је онај који се заправо зове. То се постиже прослеђивањем функције која од ињектора тражи да инстанцира објекат помоћу конструктора. Једноставније речено, услуга позива унапред дефинисану фабрику.

$ ињецтор.инстантиате ()позиваОбјецт.цреате ()са функцијом конструктора. Због тога ово користи се у услугама.

Пример фабрике у ЈаваСцрипт-у

вар фирстМодуле = ангулар.модуле ('фирстМодуле', [])

фирстМодуле.фацтори ('фирстФацтори', фунцтион () {

врати 'вредност'

})

фирстМодуле.цонтроллер ('ФирстЦонтроллер', функција ($ опсег, фирстФацтори) {

цонсоле.лог (фирстФацтори)

})

Убризгавање вредности у фабрику

Вредност се може убризгати у фабрику следећом методом:

вар фирстМодуле = ангулар.модуле ('фирстМодуле', [])

фирстМодуле.валуе ('нумберВалуе', 29)

фирстМодуле.цонтроллер ('ФирстЦонтроллер', функција ($ опсег, бројВалуе) {

цонсоле.лог (нумберВалуе)

})

БЕЛЕШКА: Мора се напоменути да се убризгава вредност коју производи фабричка функција, а не сама фабричка функција.

Овим смо дошли до краја ове фабрике у чланку АнгуларЈС. Надам се да сте разумели шта је заправо фабрика и по чему се разликује од услуге.

Ц.извините Едурека, поуздана компанија за учење на мрежи са мрежом од више од 250 000 задовољних ученика раширених широм света. Ангулар је ЈаваСцрипт оквир који се користи за креирање скалабилних, пословних и перформанси веб апликација на страни клијента. Како је усвајање Ангулар фрамеворк-а високо, управљање учинком апликације индиректно води заједници, што подстиче боље могућности за посао. Обука за сертификацију са кутом има за циљ да обухвати све ове нове концепте око развоја апликација у предузећу.