问题标签 [marionette]

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.

0 投票
1 回答
6168 浏览

backbone.js - 更新 Marionette.ItemView 中的封闭标记类

我有一个 Marionette.ItemView ,它使用 CSS 类以不同的方式设置新项目的样式:

保存和更新模型后,一切都会刷新,但“新”类仍保留在“li”上。有没有一种好方法可以在更新时更新封闭标签的类?

0 投票
1 回答
556 浏览

javascript - 使用 Marionette.CompositeView 的模块的单元测试

我想测试一个有效的模块(使用Marionette)的行为(1)。

奇怪的是,js-module (1) 有效,但使用Jasmine的单元测试 (2)失败。

有任何想法吗?


(1)


(2)

0 投票
1 回答
1536 浏览

javascript - 如何使用 requirejs 和 Backbone.Marionette 同步/组织模块

我以这种方式组织了使用RequireJsBackbone.Marionette的网络应用程序的文件结构:

要加载我使用 requireJs 的模块。
这是我的代码,对于每个模块我都提出了一些问题。


问题:
1)即使子应用需要应用程序,异步加载应用程序和子应用程序是否正确?
2)对于subApps是否正确加载需要该应用程序的路由器?


问题:
3)由于subApps可能需要一些models我决定将其加载到app.js. 这条路对吗?


问题:
4)关于这个模块我不确定app.addInitializer.
例如,我不确定是否app.userModel会在我执行时获取app.header.show。应该没问题吧?


问题: 5)可以从而不是
加载吗?main.jssubapp1/subapp1.routersubapp1/subapp1

0 投票
1 回答
763 浏览

backbone.js - 如何使用 Backbone Marionette 渲染视图

我正在使用 Backbone.Marionette,需要呈现员工及其各自部门的视图。我希望它看起来像这样:

我的收藏看起来像这样:

作为department我需要渲染department标题的更改。

我将使用哪种视图类型组合。Collection view, Composite view. 我需要将逻辑放在视图/模板中吗?

0 投票
1 回答
1362 浏览

marionette - 骨干木偶中的视图如何知道与之关联的模型是什么?

https://github.com/marionettejs/backbone.marionette/blob/master/docs/marionette.view.md

在这个例子中:

我已经尝试分析此代码,并且根据我对 Backbone 的理解,您必须指定视图与哪个模型相关联。我尝试理解 Marionette 视图,但我不知道文档的哪一部分或在此示例中显示视图如何知道this指的是新创建的模型。或者这只是一个错字?

0 投票
3 回答
13292 浏览

backbone.js - Backbone.Marionette 中的 itemview 和布局中的额外 div

我正在尝试 Backbone.Marionette,我对为什么我的布局和 ItemViews 不断生成额外的 div 感到困惑。

顺便说一句,例如在咖啡中。

这是 index.html 包含的内容:

这是它产生的:

如您所见,它不断为视图和布局生成额外的 div。我试过添加el: '#menu'el: '#content'但无济于事。

0 投票
4 回答
9736 浏览

backbone.js - Backbone 和 Marionette 中的额外包装器

使用 Backbone 和 Marionette,我创建了一个新布局,该布局进入我页面上的主要内容 div。布局如下所示:

问题是,当我渲染布局时,Backbone 会在将其放入主要内容 div 之前自动将其包装在一个 div 中,如下所示:

我知道我可以使用 tagName 更改元素,但是是否可以完全避免包装模板而直接将其插入页面上的主要内容 div 中?

0 投票
1 回答
997 浏览

marionette - 如何将特定 itemView 分配给 CompositeView 集合中的某个模型?

我正在使用backbone.marionette 并希望对传递给CompositeView 的集合中的某些项目使用不同的视图。这可能吗?

我试过了:

但不起作用。我怎样才能做到这一点?

0 投票
1 回答
281 浏览

backbone-relational - 骨干关系 ID 引用与骨干.marionette

我使用骨干关系的 includeInJSON: 'id' 来仅包含相关的模型 ID,以避免向我的服务器端发送整个对象树的垃圾邮件。不幸的是,Backbone.Marionette.View 默认只公开由 toJSON 返回的视图模式的属性,这意味着相关模型不再可以在视图模板中访问。

我意识到我需要一个自定义的 Marionette.View serializeData。由于几乎我所有的模型都需要这个,我希望能通用地解决这个问题;即覆盖所有视图的serializeData,以便它使用主干关系id 引用做正确的事情。

有人已经这样做了吗?我对此并不太抱有希望,但我认为还有其他人可以使用它,所以如果没有别的,一旦我编码了它,这将作为一个倾倒我的解决方案的地方。:)

任何解决方案都需要以下选项之一:

  1. 为模型定义两个版本的 toJSON,一个使用 includeInJSON,另一个始终将其视为 true。

  2. 通过 Marionette 对视图模板的限制仅使用模型属性和基于属性的助手来打孔的某种方法。

0 投票
1 回答
682 浏览

backbone.js - model.fetch 完成时触发事件的最佳方式

我正在寻找在获取完成时触发事件的最佳方式。
此代码有效,但我很想知道是否有更好的方法来完成以下任务。