javascript - How do you ensure you don't create model twice using history in backbone.js? -



javascript - How do you ensure you don't create model twice using history in backbone.js? -

in router have

routes: { "create/:type": "create", // #create/modeltype "diagram/:id": "diagram", // #diagram/193 "": "list" // },

then have create route

create: function(type) { console.log("diagram create " + type.touppercase()); var newdiagram = new diagram({ type: type.touppercase() }); newdiagram.save({}, { success: function(model, response) { console.log("save diagram success"); window.vnb.routers.workspace.navigate("diagram/" + model.get("id"), true); }, error: function(model, response) { console.log("error"); console.log(model); console.log(response); } }); },

if creates model , clicks back, create model, not happen.

you can create newdiagram variable property on router called diagram. can instantiate first time create method called, , next calls create method can utilize variable.

here's example

create: function(type) { console.log("diagram create " + type.touppercase()); if (this.diagram === undefined) { this.diagram = new diagram({ type: type.touppercase() }); } this.diagram.save({}, { success: function(model, response) { console.log("save diagram success"); window.vnb.routers.workspace.navigate("diagram/" + model.get("id"), true); }, error: function(model, response) { console.log("error"); console.log(model); console.log(response); } }); },

javascript routes backbone.js history

Comments

Popular posts from this blog

How do I check if an insert was successful with MySQLdb in Python? -

delphi - blogger via idHTTP : error 400 bad request -

postgresql - ERROR: operator is not unique: unknown + unknown -