คำถามติดแท็ก angularjs-factory


9
AngularJS: เมื่อใดควรใช้บริการแทนโรงงาน
กรุณาอดทนกับฉันที่นี่ ฉันรู้ว่ามีคำตอบอื่น ๆ เช่น: AngularJS: บริการกับผู้ให้บริการกับโรงงาน อย่างไรก็ตามฉันยังไม่สามารถคิดออกเมื่อคุณต้องการใช้บริการมากกว่าโรงงาน จากสิ่งที่ฉันสามารถบอกได้ว่าโรงงานใช้กันทั่วไปเพื่อสร้างฟังก์ชั่น "ทั่วไป" ที่สามารถเรียกใช้โดยตัวควบคุมหลายตัว: การสร้างฟังก์ชั่นตัวควบคุมทั่วไป เอกสารเชิงมุมดูเหมือนจะชอบโรงงานมากกว่าบริการ พวกเขายังอ้างถึง "บริการ" เมื่อพวกเขาใช้โรงงานซึ่งยิ่งทำให้สับสน! http://docs.angularjs.org/guide/dev_guide.services.creating_services ดังนั้นเมื่อหนึ่งจะใช้บริการ มีบางสิ่งที่เป็นไปได้หรือทำได้ง่ายกว่ามากกับบริการ มีอะไรแตกต่างที่เกิดขึ้นเบื้องหลังหรือไม่ ความแตกต่างด้านประสิทธิภาพ / หน่วยความจำ? นี่คือตัวอย่าง นอกเหนือจากวิธีการประกาศพวกเขาดูเหมือนกันและฉันไม่สามารถหาสาเหตุที่ฉันทำอย่างใดอย่างหนึ่งกับคนอื่น http://jsfiddle.net/uEpkE/ อัปเดต:จากคำตอบของโทมัสดูเหมือนจะบอกเป็นนัยว่าการบริการนั้นมีไว้สำหรับตรรกะที่ง่ายขึ้นและโรงงานสำหรับตรรกะที่ซับซ้อนมากขึ้นด้วยวิธีการส่วนตัวดังนั้นฉันจึงอัปเดตรหัสซอด้านล่างและดูเหมือนว่าทั้งสองสามารถรองรับฟังก์ชั่นส่วนตัวได้หรือไม่ myApp.factory('fooFactory', function() { var fooVar; var addHi = function(foo){ fooVar = 'Hi '+foo; } return { setFoobar: function(foo){ addHi(foo); }, getFoobar:function(){ return fooVar; } …

4
AngularJS: โรงงานคืออะไร?
ฉันทำงานมาหลายอย่างAngular.jsและโดยรวมแล้วฉันพบว่ามันเป็นกรอบที่น่าสนใจและทรงพลัง ฉันรู้ว่ามีการพูดคุยกันมากมายเกี่ยวกับบริการกับโรงงานเทียบกับผู้ให้บริการเทียบกับค่านิยม แต่ฉันยังค่อนข้างสับสนว่า a Factoryคืออะไร โรงงานได้รับการกำหนดไว้ในการอภิปราย StackOverflow อื่น ๆ ดังต่อไปนี้: โรงงาน ไวยากรณ์: module.factory( 'factoryName', function );ผลลัพธ์: เมื่อประกาศ factoryName เป็นอาร์กิวเมนต์ที่สามารถฉีดได้คุณจะได้รับค่าที่ส่งคืนโดยการเรียกใช้การอ้างอิงฟังก์ชันที่ส่งไปยัง module.factory ฉันพบว่าคำอธิบายนี้เข้าใจยากมากและไม่ได้เพิ่มความเข้าใจว่าโรงงานคืออะไร ทุกคนจะมีคำอธิบายใด ๆ หรือตัวอย่างชีวิตจริงเพื่อใช้ร่วมกันเกี่ยวกับสิ่งที่ตรงFactoryและเหตุผลที่คุณควรจะใช้มันแทนService, Providerหรืออื่น ๆ ? อัปเดต service ถืออ้างอิงไปยังวัตถุ A factory คือฟังก์ชันที่ส่งคืนวัตถุใด ๆ A provider คือฟังก์ชันที่ส่งกลับฟังก์ชันใด ๆ - ว้าว -
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.