简体   繁体   中英

How to call a function in a backbone view from another backbone view

In my current application, I have a save function in one of my backbone views.

custom_save : function() { // this method's save code // have to call another views save function here }

The other view name is App.SettingsView and it has a save method. I have to call this save method right after the custom_save logic. How can I call App.SettingsView save function inside custom_save function. Please not both are 2 different files

Thanks

It's a bad practice you got there. Coupling between the views. Why don't you create a EventBus that inherits from the Backbone.Events then trigger the event that the another view subscribes too. When event occurs just trigger the save function that's it

View#1 Save

save:function(){
 EventBus.trigger("save:view");
}

View#2 Save

initialize:function(){
 EventBus.on("save:view:",this.save);
},
save:function(){
//your code
}

Sounds nice ? It should :)

Create a new view object and call it.

var anotherView = new App.SettingView();
anotherView.save();

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM