1

我希望在我的 RequireJS 应用程序中使用 Backbone Marionette。它看起来很有前途,尤其是视图和区域。我想在我的应用程序中使用它们,但使用我的应用程序中已经存在的一些现有功能。

例如,我想使用我现有的事件聚合器而不是 Backbone.Wreqr。我可以这样做吗?Backbone.Wreqr 是 Marionette 的硬依赖还是 Marionette 可以在没有它的情况下工作?

此外,我不想包含我不打算在我的应用程序中使用的 Marionette 片段,例如模块、templateCache 等。

有没有可能有一个修剪版的木偶?

谢谢钦坦

4

1 回答 1

2

目前,Marionette 对多个库有硬依赖。从它的文档:

先决条件

Marionette 依赖 Underscore、Backbone、jQuery 和其他各种库作为其基础。

  • JSON2.js
  • jQuery (v1.7, v1.8, v1.9)
  • 下划线.js (v1.4.4)
  • Backbone.js (v1.0.0)
  • 骨干网.wreqr.js
  • 骨干.babysitter.js

至于挑选和选择功能,Marionette 的代码与它自己的文件中的每个主要功能都很好地分开。您也许可以复制 repo 并执行以下操作之一:

  1. AMDify 将每个功能与 requirejs 一起使用
  2. 拼凑您想要的文件/功能并修改生成的组合文件
  3. 从生成的 amdified 文件中剔除您不想要的功能。

对于任何一个路由,一定要正确排列特性之间的依赖关系(即Layout依赖于ItemView,而ItemView依赖于View,所以如果你打算使用Layout,你需要保留View和ItemView)。

于 2013-08-02T18:45:18.667 回答