KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I really like Backbone, but I am having the hardest time doing what would seem to be simple things. I appreciate any help with the following example. I have a model, Criteria, that I want to use to store the state of some items in my UI. there are a couple simple attributes, and one attribute that is an array of IDs used to store the IDs of tags the user has selected in the UI. So, I create a new instance. I add some items to the tags array. Then, I want to start fresh, create a new instance, assigned to the same variable. But, my tags array continues to hold information I added to it as a part of the first instance of Criteria. I have documented the test case below. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Test</title> <script src="Scripts/Libraries/jquery-1.6.1.js" type="text/javascript"></script> <script src="Scripts/Libraries/underscore.js" type="text/javascript"></script> <script src="Scripts/Libraries/backbone.js" type="text/javascript"></script> <script language="javascript" type="text/javascript"> $(function () { // Simple model to hold some state about my UI. var Criteria = Backbone.Model.extend({ defaults: { "status": "Normal", "priority": "Normal", "tags": new Array() } }); // Create new criteria. window.criteria = new Criteria(); // The length of the tags array should be 0. PASSES console.log("Expect 0: Actual " + window.criteria.get("tags").length); // Add a tag id to the tags array. window.criteria.get("tags").push(5); // Tag with ID of 5. // The length of th
Tags (comma-separated)
Save Edits
Cancel