ดังนั้นเพื่อนร่วมงานแนะนำฉันให้รู้จักกับรูปแบบการเผยแพร่ / สมัครสมาชิก (ใน JS / jQuery) แต่ฉันมีปัญหาในการจับใจความว่าทำไมจึงใช้รูปแบบนี้กับ JavaScript / jQuery 'ปกติ'
ตัวอย่างเช่นก่อนหน้านี้ฉันมีรหัสต่อไปนี้ ...
$container.on('click', '.remove_order', function(event) {
event.preventDefault();
var orders = $(this).parents('form:first').find('div.order');
if (orders.length > 2) {
orders.last().remove();
}
});
และฉันจะได้เห็นบุญของการทำสิ่งนี้แทนเช่น ...
removeOrder = function(orders) {
if (orders.length > 2) {
orders.last().remove();
}
}
$container.on('click', '.remove_order', function(event) {
event.preventDefault();
removeOrder($(this).parents('form:first').find('div.order'));
});
เนื่องจากแนะนำความสามารถในการใช้removeOrder
ฟังก์ชันซ้ำสำหรับเหตุการณ์ต่างๆเป็นต้น
แต่ทำไมคุณถึงตัดสินใจใช้รูปแบบการเผยแพร่ / สมัครสมาชิกและใช้ความยาวต่อไปนี้หากเป็นเช่นเดียวกัน (FYI ฉันใช้jQuery เล็ก ๆ ผับ / ย่อย )
removeOrder = function(e, orders) {
if (orders.length > 2) {
orders.last().remove();
}
}
$.subscribe('iquery/action/remove-order', removeOrder);
$container.on('click', '.remove_order', function(event) {
event.preventDefault();
$.publish('iquery/action/remove-order', $(this).parents('form:first').find('div.order'));
});
ฉันเคยอ่านเกี่ยวกับรูปแบบมาแล้ว แต่ฉันนึกไม่ออกว่าทำไมถึงจำเป็น แบบฝึกหัดที่ฉันเห็นอธิบายวิธีการการใช้รูปแบบนี้ครอบคลุมเฉพาะตัวอย่างพื้นฐานของฉันเอง
ฉันคิดว่าประโยชน์ของ pub / sub จะทำให้ตัวเองชัดเจนในแอปพลิเคชันที่ซับซ้อนมากขึ้น แต่ฉันนึกไม่ออก ฉันกลัวว่าฉันจะพลาดประเด็นนี้ไปโดยสิ้นเชิง แต่ฉันอยากรู้ว่าถ้ามี!
คุณช่วยอธิบายสั้น ๆได้ไหมว่าทำไมและในสถานการณ์ใดรูปแบบนี้จึงเป็นประโยชน์ การใช้รูปแบบ pub / sub สำหรับข้อมูลโค้ดดังตัวอย่างข้างต้นจะคุ้มค่าหรือไม่