Semua yang Perlu Anda Ketahui Tentang Pabrik di AngularJS



Artikel ini akan memberi Anda pengetahuan terperinci dan komprehensif tentang Pabrik di AngularJS dan bagaimana perbedaannya dari Layanan.

menyediakan layanan yang merupakan objek tunggal yang dapat digunakan kembali. Mereka dapat digunakan untuk berbagi kode di seluruh aplikasi AngularJS pengguna. Mereka juga bisa disuntikkan ke dalam direktif, filter, dan . Pada artikel ini, kita akan memahami pabrik di AngularJS.

Apa Pabrik di AngularJS?

Pabrik adalah fungsi sudut yang digunakan untuk mengembalikan nilai. Nilai sesuai permintaan dibuat oleh pabrik, kapan pun layanan atau pengontrol membutuhkannya. Setelah nilai dibuat, nilai akan digunakan kembali untuk semua layanan dan pengontrol.





Angular Logo - Pabrik di AngularJS

Kami dapat menggunakan pabrik untuk membuat layanan.



Perbedaan Antara Layanan dan Pabrik

  • Sebuah layanan dapat didefinisikan dengan cara berikut:

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

this.sayHola = function () {



function overloading dalam contoh c ++

console.log ('Halo')

}

})

Metode .service () mengambil nama dan fungsi yang mendefinisikan layanan. Kita bisa menyuntikkannya dengan cara berikut:

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

FirstService.sayHello () // mencatat 'Halo'

})

  • Sebuah pabrik, sebaliknya dapat didefinisikan dengan cara berikut:

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

kembali {

sayHola: function () {

console.log ('Halo')

}

}

})

factory () juga merupakan metode yang menggunakan nama dan fungsi yang menentukan pabrik. Kita bisa menyuntikkannya dengan cara yang sama seperti menyuntikkan layanan. Perbedaan utama antara layanan dan pabrik adalah kami mengembalikan literal objek dalam kasus pabrik (daripada menggunakan ini). Alasannya adalah layanan adalah fungsi konstruktor sedangkan pabrik bukan.

  • Untuk pemahaman yang lebih baik, mari kita lihat fungsi pabrik ():

fpabrik penyucian (nama, factFn, tegakkan) {

penyedia pengembalian (nama, {

$ get: menegakkan! == false? penegakanReturnValue (nama, factFn): factFn

})

}

Dalam kode yang diberikan di atas, dibutuhkan nama dan fungsi pabrik yang diteruskan. Ini mengembalikan penyedia dengan nama yang sama, bersama dengan$ dapatkanmetode (yang merupakan fungsi pabrik). Ini karena alasan bahwa setiap kali injektor diminta untuk ketergantungan tertentu, injektor meminta penyedia untuk contoh layanan itu dengan memanggil$ get ()metode.

  • Saat menyuntikkan FirstService, fungsi pabrik dipanggil:

FirstServiceProvider. $ Get () // mengembalikan instance layanan

  • Untuk kode layanan:

layanan fungsi (nama, konstruktor) {

pabrik kembali (nama, ['$ injektor', fungsi ($ injektor) {

return $ injector.instantiate (konstruktor)

}])

}

Saat kita meneleponlayanan (), pabrik ()adalah salah satu yang sebenarnya disebut. Ini dilakukan dengan melewatkan fungsi yang meminta injektor untuk membuat instance objek oleh konstruktor. Dalam istilah yang lebih sederhana, layanan memanggil pabrik yang telah ditentukan sebelumnya.

$ injector.instantiate ()memanggilObject.create ()dengan fungsi konstruktor. Itulah mengapa ini digunakan dalam layanan.

Contoh Pabrik di JavaScript

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

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

mengembalikan 'nilai'

})

firstModule.controller ('FirstController', function ($ scope, firstFactory) {

console.log (firstFactory)

})

Memasukkan Nilai ke Pabrik

Nilai dapat disuntikkan ke pabrik dengan metode berikut:

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

firstModule.value ('numberValue', 29)

firstModule.controller ('FirstController', function ($ scope, numberValue) {

console.log (numberValue)

})

cara mengonversi ke biner dengan python

CATATAN: Perlu dicatat bahwa nilai yang dihasilkan oleh fungsi pabrik yang diinjeksikan, bukan fungsi pabrik itu sendiri.

Dengan ini, kami mengakhiri artikel Pabrik di AngularJS ini. Saya harap Anda memahami apa sebenarnya pabrik itu dan apa bedanya dengan layanan.

Clihat saja oleh Edureka, perusahaan pembelajaran online tepercaya dengan jaringan lebih dari 250.000 pelajar yang puas dan tersebar di seluruh dunia. Angular adalah kerangka kerja JavaScript yang digunakan untuk membuat aplikasi web sisi klien yang skalabel, perusahaan, dan kinerja. Dengan adopsi kerangka kerja Angular yang tinggi, manajemen kinerja aplikasi didorong oleh komunitas secara tidak langsung mendorong peluang kerja yang lebih baik. Pelatihan Sertifikasi Angular bertujuan untuk mencakup semua konsep baru ini seputar Pengembangan Aplikasi Perusahaan.