问题标签 [backbone-events]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
backbone.js - In Backbone.js, why do silent changes trigger change events eventually?
When I pass {"silent":true}
while setting an attribute in a Backbone model, why doesn't that just suppress the change:attribute
event? What is the advantage of firing that event the next time an attribute is changed?
Update
Backbone 0.9.10 changed the behavior of passing { "silent": true }
. From the changelog:
Passing
{silent:true}
on change will no longer delay individual "change:attr" events, instead they are silenced entirely.
Browse the changelog here
backbone.js - 如何在backbone.js fetch() 中定义接收到的数据类型?
从服务器获取数据将 json 数据作为字符串数据类型返回给我,而不是作为application/json数据类型,因此集合不会被刷新。
我尝试将 jquery.ajax 选项contentType:"application/json"提供给 fetch 选项,但仍然不起作用。
我怎样才能让它工作?我要从服务器发送 mimetype 吗?如果是这样,如何?
我在发送的数据上使用 json_encode。
preloader 是我收藏的一个实例。
编辑: 我的子视图模板没有被检测到,因为我将它保留在 masterview 的$el元素之外,更正它,现在我收到 underscore.js 错误,即
str 为空
这是因为主干应用程序没有将其作为 json 对象吗?
请求标头
响应标头 有一行
意味着它是一个json,那么有什么问题?
backbone.js - 捕获div上的滚动事件
我试图在 Backbone.Marionette.CompositeView 中捕获滚动事件,但没有成功。
作为练习,我正在使用 Backbone.Marionette重写http://www.atinux.fr/backbone-books/ 。如您所见,当您向下滚动时,会获取并显示更多书籍(即无限滚动)。但是,我无法在我的视图中捕获滚动事件。
这是我的(简化的)代码:
完整的源代码可以在这里看到:https ://github.com/davidsulc/backbone.marionette-atinux-books/blob/scroll/assets/javascript/app.js#L86-89
我不明白的是“点击”事件被正确触发,但“滚动”事件没有。我究竟做错了什么?
编辑:所以错误最终非常简单......我将“el:#content”传递给视图的构造函数,但滚动是在“.library”上的CSS中定义的。所以一旦我改变了我的DOM
到
一切正常...
javascript - 主干js中的自定义鼠标事件
支持自定义鼠标事件的好方法是什么?例如,我目前有:
但是mousedown
,我想创建一个名为的自定义事件,而不是和mousedrag
的组合。有没有推荐的方法来添加这样的自定义事件?mousedown
mousemove
jquery - 带有 jQuery 的 Backbone.js 没有按预期改变 dom
store-models.js 模型
html
问题是代码没有将 li 元素附加到 categories-list ,即使前面的主干.js 代码看起来应该如此。
这里有什么建议吗??
backbone.js - 骨干模型事件/触发器未触发
在几个教程中看到它后,我试图在我的视图中执行以下代码行
不幸的是,更改事件没有触发,因此我的视图没有重新渲染。
我尝试绑定到不同的事件并使用触发函数创建几个自定义事件,但模型上似乎没有任何触发。此外,控制台没有错误。更改事件在不同的集合上运行良好。我正在使用 Zepto 1.0、Backbone.js 0.9.2 和 Underscore.js 1.3.1
编辑:我正在尝试从路由器执行以下操作
我的模型是这样设置的:
我想知道是否有人以前遇到过类似的问题并有一个快速修复。如果没有,并且您需要更多代码来找到解释,请告诉我...
backbone.js - 骨干点击事件未触发
所以我有一个 Backbone 视图,我在其中声明它是 className。我正在尝试将单击事件绑定到该类。所以是这样的:
这似乎不起作用。这似乎是因为元素不在视图本身内。因此,如果我在模板中创建一个元素,我可以很好地绑定到它。我应该能够绑定到视图本身对吗?任何帮助表示赞赏。谢谢!
javascript - 从另一个 js 函数触发主干事件
环顾四周,但找不到任何有用的东西,所以..
我有一个带有联系人卡片视图的 Backbone.js 联系人模型。此视图有许多输入,您可以在其中编辑联系人信息。
我在页面上有许多其他表单不是主干模型,所以他们使用“保存按钮”来保存。我基本上希望这个保存按钮也能触发Contacts.CardView.saveCard();
(可能是FileApp.cardView.saveCard as well?
——我的一些代码在下面。
有没有办法做到这一点?我以为我可以使用以下内容,但似乎它不会将事件绑定到视图之外的任何内容?:
卡片视图
路由器:
javascript - 定义参数时,主干视图事件似乎不执行函数
对于我的一个主干视图,我有以下代码:
我在控制台中收到此错误:
我真的不明白为什么 AddFavourite 方法而不是 showDetail 方法会发生这种情况 - 您是否不允许将需要定义参数的方法传递给任何事件?
非常感谢您的任何帮助(!)