jjzjj

backbone

全部标签

javascript - 使用Backbone.js发布数据时如何防范CSRF?

Backbone.js在后台处理将数据发布到服务器,因此没有简单的方法在有效负载中插入CSRFtoken。在这种情况下,我该如何保护我的网站免受CSRF攻击?在这个SO答案中:https://stackoverflow.com/a/10386412/954376,建议验证x-Requested-Byheader是否为XMLHTTPRequest。这足以阻止所有CSRF尝试吗?在Django文档中,建议在每个AJAX请求的另一个自定义header中添加CSRFtoken:https://docs.djangoproject.com/en/1.5/ref/contrib/csrf/#aja

javascript - 是否有经验法则来决定何时在 Backbone.Marionette 中使用 trigger 或 triggerMethod?

我正在玩Backbone.js和Backbone.Marionette我想知道trigger和触发方法。特别是,是否有任何经验法则来决定何时使用前者或后者?例如,在我看来,事件对于DOM元素与其View之间的通信很有用。triggerMethod在Marionette中用于更新级联不同的组件,例如布局调用show方法给它的子元素(子元素响应onShow)。所以,对我来说,这与在其上调用直接方法相同。这是真的吗?触发器呢?提前致谢。 最佳答案 没有太大的区别,这只是取决于你想做什么......trigger会触发一个事件trigger

javascript - 来自 subview 的 Backbone.JS 自定义事件

我有两种观点,为了简单起见,parent/child。child正在使用触发器抛出一个事件。我没有在parent的处理程序中看到它。以下是否有效?varparent=Backbone.View.extend({events:{"childevent":"run"},run:function(e){console.log(e);},render:function(){/*renderthechildhere*/}});varchild=Backbone.View.extend({someAction:function(){this.trigger('childevent');}});

javascript - 这些 Backbone/Underscore .bind() 方法有什么区别?

window.SomeView=Backbone.View.extrend({initialize1:function(){_.bindAll(this,'render');this.model.bind('change',this.render);},initialize2:function(){this.model.bind('change',_.bind(this.render,this));},initialize3:function(){_.bind(this.render,this);this.model.bind('change',this.render);},});在一

javascript - backbone.js ajax 调用

我正在为我正在构建的新应用学习Backbone.js。我需要执行AJAX调用(RESTSERVICE)进行身份验证。这个调用的正确位置在哪里?在模型、View或其他地方?特别与Backbone.jsMVC模型相关。$(function(){varLoginView=Backbone.View.extend({el:$("#login-form"),events:{"click#login":"login"},login:function(){alert("Hello");}});window.LoginView=newLoginView();});Username:Password:L

javascript - Backbone.js 点击事件不适用于触摸

events:'click':'select'在MobileSafari上使用此事件时,触摸时会触发两次。这是一个已知错误还是我自己造成的?我已经把它改成了events:'touchstart':'select'它工作得很好,但这意味着它不再能在普通浏览器中工作。感谢您提供任何信息。 最佳答案 试试这段代码:TouchView=Backbone.View.extend({events:function(){returnMOBILE?{"touchstart":'select'}:{"mousedown":'select'}}}查看实

javascript - 在浏览器中使用 Sinon Spies 的 Backbone.js 查看测试

我正在为主干View编写测试,以测试在获取模型后是否调用了渲染函数。测试是:beforeEach(function(){$('body').append('');profileView=newProfileView();});it('shouldcalltherenderfunctionafterthemodelhasbeenfetched',function(done){profileView.model=newUserModel({md5:'d7263f0d14d66c349016c5eabd4d2b8c'});varspy=sinon.spy(profileView,'rende

javascript - 与 jQuery 一起玩球的 backbone.js 替代品?

是否有backbone.js之类的替代方案可以为您的前端javascript提供一些框架/结构-但没有任何不需要的依赖项并且与jQuery的结合更紧密? 最佳答案 您需要一个易于使用的MVC框架吗?因为Sammy.js似乎是迄今为止最简单的RESTful框架,具有路由、管理哈希更改和模板插件。 关于javascript-与jQuery一起玩球的backbone.js替代品?,我们在StackOverflow上找到一个类似的问题: https://stackov

javascript - 在 Backbone.js 中实现 Backbone.Subset.js 以从父集合中过滤模型

在thisstackoverflowpost我阅读了有关过滤主干集合和使用子集的内容。一个答案(雪橇)建议使用backbone.subset.js(usageexample)。我在backbone.subset.js上找不到任何进一步的资源,而且我未能将其实现到我的项目中。backbone.subset.js似乎是我想要实现的目标的完美解决方案。(拥有一个始终保存所有模型的“父”集合,并根据用户输入将父集合中的相关模型过滤到backbone.subset集合中。)我的“父”集合,包含所有任务:varTasksAll=Backbone.Collection.extend({url:'/t

javascript - 在 backbone.js 中使用 jQuery UI 拖放

我的Backbone应用程序的一个功能涉及将类型A的模型与类型B的模型相关联,这是通过将ViewA拖到ViewB上来完成的。在B的View类中,我监听放置事件并从中获取DOM元素ViewA,但没有关于模型A的信息。检索这些信息的最佳方式是什么?到目前为止我最好的猜测是让模型A在应用程序的命名空间中保存对自身的引用,如果拖放处理程序尚未这样做,则在拖动结束时删除此引用在ViewA上触发一个事件,将对模型B的引用与事件一起传递,然后让模型A调用模型B的方法...将模型A存储为ViewA的$.data属性但所有这些方法似乎都令人费解/不够优雅。 最佳答案