כל מה שאתה צריך לדעת על מפעל ב- AngularJS



מאמר זה יספק לך ידע מפורט ומקיף על Factory in AngularJS וכיצד הוא שונה משירות.

מספק שירותים שהם אובייקטים יחידים לשימוש חוזר. הם יכולים לשמש לשיתוף הקוד בין המשתמשים ביישומי AngularJS. הם יכולים להיות מוזרקים גם להוראות, מסננים ו- . במאמר זה נבין את המפעל ב- AngularJS.

מהו מפעל ב- AngularJS?

מפעל הוא פונקציה זוויתית המשמשת להחזרת הערכים. ערך לפי דרישה נוצר על ידי המפעל בכל פעם ששירות או בקר זקוקים לו. לאחר יצירת הערך, נעשה בו שימוש חוזר לכל השירותים והבקרים.





לוגו Angular - מפעל ב- AngularJS

אנו יכולים להשתמש במפעל כדי ליצור שירות.



ההבדל בין שירות למפעל

  • ניתן להגדיר שירות באופן הבא:

app.service ('FirstService', פונקציה () {

this.sayHola = פונקציה () {



console.log ('שלום')

}

כיצד להשתמש בשיטת פיצול ב- Java

})

השיטה .service () לוקחת את השם ואת הפונקציה המגדירה את השירות. אנו יכולים להזריק אותו בצורה הבאה:

app.controller ('AppController', פונקציה (FirstService) {

FirstService.sayHello () // יומן 'שלום'

})

  • מפעל, לעומת זאת, יכול להיות מוגדר באופן הבא:

app.factory ('FirstService', פונקציה () {

להחזיר {

sayHola: פונקציה () {

console.log ('שלום')

}

}

})

factory () היא גם שיטה שלוקחת שם ופונקציה המגדירים את המפעל. אנו יכולים להזריק אותו באותו אופן כמו הזרקת שירות. ההבדל העיקרי בין שירות למפעל הוא שאנחנו להחזיר אובייקט מילולי במקרה של מפעל (במקום להשתמש בזה). הסיבה היא ששירות הוא פונקציה של קונסטרוקטור ואילו מפעל לא.

  • להבנה טובה יותר, בואו נסתכל על פונקציית המפעל ():

fמפעל unction (שם, factFn, אכיפה) {

ספק החזר (שם, {

$ get: enforce! == false? enforceReturnValue (שם, factFn): factFn

})

}

בקוד שצוין למעלה, זה לוקח את השם ואת פונקציית המפעל שעברה. זה מחזיר ספק באותו שם, יחד עם a$ לקבלשיטה (שהיא פונקציית המפעל). זאת בשל הסיבה שבכל פעם שהמזרק מתבקש לתלות ספציפית, המזרק מבקש מהספק מופע של אותו שירות על ידי התקשרות ל$ get ()שיטה.

  • בהזרקת FirstService, פונקציות המפעל נקראות:

FirstServiceProvider. $ Get () // להחזיר את המופע של השירות

  • לקבלת קוד השירות:

שירות פונקציות (שם, קונסטרוקטור) {

יחסי איסה והאסה בג'אווה

החזר מפעל (שם, ['$ מזרק', פונקציה ($ מזרק) {

החזר מזרק $ .instantiate (קונסטרוקטור)

}])

}

כשאנחנו מתקשריםשירות (), מפעל ()הוא זה שנקרא בפועל. זה נעשה על ידי העברת פונקציה המבקשת מהמזרק להנחיל אובייקט על ידי הקונסטרוקטור. במילים פשוטות יותר, שירות קורא למפעל מוגדר מראש.

$ injector.instantiate ()קוראObject.create ()עם פונקציית הבנאי. זו הסיבה זֶה משמש בשירותים.

דוגמה למפעל ב- JavaScript

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

firstModule.factory ('firstFactory', פונקציה () {

להחזיר 'ערך'

})

תוכנית רובין בסביבות ג

firstModule.controller ('FirstController', פונקציה ($ scope, firstFactory) {

console.log (firstFactory)

})

הזרקת ערכים למפעל

ניתן להזרים ערך למפעל בשיטה הבאה:

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

firstModule.value ('numberValue', 29)

firstModule.controller ('FirstController', פונקציה ($ scope, numberValue) {

console.log (numberValue)

})

הערה: יש לציין כי מוזרק הערך המיוצר על ידי פונקציית המפעל, ולא פונקציית המפעל עצמה.

עם זאת, אנו מגיעים לסוף מאמר זה של מפעל ב- AngularJS. אני מקווה שקיבלתם הבנה מהו בדיוק מפעל ואיך זה שונה משירות.

גלעזאזל עם מאת אדוריקה, חברת למידה מקוונת מהימנה עם רשת של יותר מ -250,000 לומדים מרוצים הפרוסים ברחבי העולם. Angular היא מסגרת JavaScript המשמשת ליצירת יישומי אינטרנט ניתנים להרחבה, ארגונית וביצועים בצד הלקוח. עם אימוץ מסגרת זוויתית גבוהה, ניהול הביצועים של היישום מונע בעקיפין בעקיפין ומניע הזדמנויות עבודה טובות יותר. אימון ההסמכה הזוויתי נועד לכסות את כל המושגים החדשים הללו סביב פיתוח יישומים ארגוניים.