คำถามติดแท็ก backbone.js

Backbone.js เป็นเฟรมเวิร์ก JavaScript ที่มีอินเทอร์เฟซ RESTful JSON และอิงตามกระบวนทัศน์การออกแบบแอปพลิเคชัน model – view – Presenter (MVP)

3
กระดูกสันหลังดู "el" สับสน
มุมมองควรelได้รับการจัดการอย่างไร? จะต้องมีการตั้งค่ามิฉะนั้นเหตุการณ์จะไม่เริ่มทำงาน (ดูที่นี่ ) แต่มันควรจะเป็นองค์ประกอบที่มีอยู่แล้วในหน้าหรือไม่? ในแอปของฉันฉันสร้างเทมเพลต (jQuery Templates) ลงใน Fancybox elในกรณีนั้นควรเป็นอย่างไร?

3
backbone.js - เหตุการณ์ที่รู้ว่าคลิกอะไร
ในคลาสมุมมอง backbone.js ของฉันฉันมีสิ่งที่ต้องการ: ... events: { 'click ul#perpage span' : 'perpage' }, perpage: function() { // Access the text of the span that was clicked here // Something like: alert($(element).text()) }, ... เนื่องจากมาร์กอัปต่อหน้าของฉันอาจมีบางอย่างเช่น: <ul id="perpage"> <li><span>5</span></li> <li><span>10</span></li> </ul> แล้วฉันจะหาข้อมูลเกี่ยวกับองค์ประกอบที่ทำให้เกิดเหตุการณ์ได้อย่างไร หรือในกรณีนี้มีการคลิก?

5
วิธีส่งพารามิเตอร์ไปยังมุมมอง
ฉันมีชุดปุ่มซึ่งเมื่อคลิกแล้วจะแสดงเมนูป๊อปอัพที่อยู่ด้านล่างปุ่ม ฉันต้องการส่งตำแหน่งของปุ่มไปยังมุมมอง ฉันจะทำเช่นนั้นได้อย่างไร? ItemView = Backbone.View.extend({ tagName: 'li', events: { 'click': 'showMenu' }, initialize: function() { _.bindAll(this, 'render'); }, render: function() { return $(this.el).html(this.model.get('name')); }, showMenu: function() { var itemColl = new ItemColl(); new MenuView({collection: itemColl}); // how to pass the position of menu here? } });

7
ฉันจะดึงโมเดลเดียวใน Backbone ได้อย่างไร
ฉันมีClockโมเดลใน Backbone: var Clock = Backbone.Model.extend({}); /clocks/123ฉันพยายามที่จะได้รับตัวอย่างของการที่มีข้อมูลล่าสุดจาก บางสิ่งที่ฉันได้ลอง: วิธีการระดับ "คลาส" Clock.fetch(123) // TypeError: Object function (){ ... } has no method 'fetch' สร้างอินสแตนซ์แล้วเรียกfetchใช้: c = new Clock({id: 123}) c.fetch() // Error: A 'url' property or function must be specified คอลเลกชัน ฉันพยายามสร้างAllClocksทรัพยากรคอลเลกชัน (แม้ว่าฉันจะไม่ได้ใช้สิ่งนี้ในหน้านี้) var AllClocks = Backbone.Collection.extend({ model: Clock, url: '/clocks/' …

6
ฉันจะรักษาความปลอดภัยการเรียก REST API ได้อย่างไร
ฉันกำลังพัฒนาเว็บแอปพักผ่อนที่ใช้กรอบเว็บยอดนิยมในแบ็กเอนด์พูด (ราง, ซินาตร้า, กระติกน้ำ, express.js) ตามหลักการแล้วฉันต้องการพัฒนาฝั่งไคลเอ็นต์ด้วย Backbone.js ฉันจะให้เฉพาะฝั่งไคลเอ็นต์ JavaScript ของฉันโต้ตอบกับการเรียก API เหล่านั้นได้อย่างไร ฉันไม่ต้องการให้การเรียก API เหล่านั้นเป็นสาธารณะและถูกเรียกโดยcurlหรือเพียงแค่ป้อนลิงก์บนเบราว์เซอร์

15
ย้อนกลับลำดับการจัดเรียงด้วย Backbone.js
ด้วยBackbone.jsฉันได้ตั้งค่าคอลเลคชันด้วยฟังก์ชันเปรียบเทียบ มันจัดเรียงแบบจำลองได้ดี แต่ฉันต้องการกลับลำดับ ฉันจะจัดเรียงแบบจำลองจากมากไปหาน้อยได้อย่างไร

1
วิธีบันทึกข้อมูลโมเดล Backbone.js
ฉันสนใจการพัฒนาส่วนหน้ามากขึ้นและเพิ่งเริ่มสำรวจ Backbone.js ในแอปของฉัน ฉันต้องการคงข้อมูลโมเดลไว้ที่เซิร์ฟเวอร์ คุณช่วยอธิบายวิธีต่างๆในการบันทึกข้อมูล Model (โดยใช้รูปแบบ json) ฉันใช้ Java บนฝั่งเซิร์ฟเวอร์ นอกจากนี้ฉันยังเห็นว่าส่วนใหญ่ใช้ REST เพื่อบันทึกข้อมูล เนื่องจากฉันเป็นนักพัฒนาส่วนหน้ามากขึ้นฉันจึงไม่ทราบถึง REST และสิ่งอื่น ๆ ที่คล้ายคลึงกัน จะดีมากถ้ามีใครช่วยอธิบายขั้นตอนให้ฉันฟังด้วยตัวอย่างง่ายๆ

8
การตั้งค่า id และ className แบบไดนามิกในมุมมอง Backbone.js
ฉันอยู่ระหว่างการเรียนรู้และใช้งาน Backbone.js ฉันมีโมเดลรายการและมุมมองรายการที่เกี่ยวข้อง อินสแตนซ์โมเดลแต่ละรายการมีแอตทริบิวต์ item_class และ item_id ซึ่งฉันต้องการให้แสดงเป็นแอตทริบิวต์ "id" และ "class" ของมุมมองที่เกี่ยวข้อง อะไรคือวิธีที่ถูกต้องในการบรรลุเป้าหมายนี้? ตัวอย่าง: var ItemModel = Backbone.Model.extend({ }); var item1 = new ItemModel({item_class: "nice", item_id: "id1"}); var item2 = new ItemModel({item_class: "sad", item_id: "id2"}); var ItemView = Backbone.View.extend({ }); ฉันควรใช้มุมมองอย่างไรเพื่อให้มุมมองของเอลแปลเป็น: <div id="id1" class="nice"></div> <div id="id2" class="sad"> </div> ในตัวอย่างส่วนใหญ่ที่ฉันได้เห็นelของมุมมองทำหน้าที่เป็นองค์ประกอบของ wrapper …

7
ใน Javascript ขีดล่างหมายความว่าอย่างไร
var Gallery = Backbone.Controller.extend({ _index: null, _photos: null, _album :null, _subalbums:null, _subphotos:null, _data:null, _photosview:null, _currentsub:null, routes: { "": "index", "subalbum/:id": "subindex", "subalbum/:id/" : "directphoto", "subalbum/:id/:num" : "hashphoto" }, initialize: function(options) { var ws = this; if (this._index === null){ $.ajax({ url: 'data/album1.json', dataType: 'json', data: {}, success: function(data) { ws._data …

3
ต้องการคำอธิบายของฟังก์ชัน _.bindAll () จาก Underscore.js
ฉันได้เรียนรู้ backbone.js มาบ้างแล้วและฉันได้เห็นอินสแตนซ์มากมายที่_.bindAll()ถูกใช้ ฉันได้อ่านหน้าเอกสาร backbone.js และ underscore.js ทั้งหมดเพื่อพยายามทำความเข้าใจว่ามันทำอะไรได้บ้าง แต่ฉันก็ยังคลุมเครือเกี่ยวกับสิ่งที่มันทำ นี่คือคำอธิบายขีดล่าง: _.bindAll(object, [*methodNames]) ผูกเมธอดจำนวนมากบนอ็อบเจ็กต์ที่ระบุโดย methodNames เพื่อให้รันในบริบทของอ็อบเจ็กต์นั้นเมื่อใดก็ตามที่มีการเรียกใช้ มีประโยชน์มากสำหรับฟังก์ชันการเชื่อมโยงที่จะใช้เป็นตัวจัดการเหตุการณ์ซึ่งจะถูกเรียกใช้ด้วยสิ่งนี้ที่ไร้ประโยชน์ หากไม่มีการระบุ methodNames คุณสมบัติฟังก์ชันทั้งหมดของอ็อบเจ็กต์จะถูกผูกไว้กับอ็อบเจ็กต์ var buttonView = { label : 'underscore', onClick : function(){ alert('clicked: ' + this.label); }, onHover : function(){ console.log('hovering: ' + this.label); } }; _.bindAll(buttonView); jQuery('#underscore_button').bind('click', buttonView.onClick); => When the button …

3
Webpack GivePlugin กับ externals?
ฉันสำรวจความคิดของการใช้WebpackกับBackbone.js ฉันได้ทำตามคู่มือเริ่มใช้งานฉบับย่อและมีแนวคิดทั่วไปเกี่ยวกับการทำงานของ Webpack แต่ฉันไม่ชัดเจนเกี่ยวกับวิธีโหลดไลบรารีการพึ่งพาเช่น jquery / backbone / ขีดล่าง ควรโหลดจากภายนอกด้วย<script>หรือนี่คือสิ่งที่ Webpack สามารถจัดการได้เหมือน shim ของ RequireJS? ตามที่doc webpack: shimming โมดูล , ProvidePluginและexternalsดูเหมือนจะเกี่ยวข้องกับเรื่องนี้ (เพื่อให้เป็นbundle!ที่ใดที่หนึ่งรถตักดิน) แต่ฉันไม่สามารถคิดออกเมื่อมีการใช้งานที่ ขอบคุณ
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.