gpt4 book ai didi

backbone.js - 您如何构建您的 Backbone + RequireJS 应用程序?

转载 作者:行者123 更新时间:2023-12-03 20:55:09 26 4
gpt4 key购买 nike

在将我的 Backbone 对象组织到 AMD(用于中型到大型应用程序)中时,我一直在努力尝试在可重用性和复杂性之间取得适当的平衡

(A) 每个 Backbone 对象(模型、 View 等)都应该在它们自己的模块中吗?
(B) 相关的 Backbone 对象是否应该在同一个 AMD 模块中? (即:同一模块定义中的PersonModel、PersonCollection、PersonView对象)

选项 (A) 似乎允许最大的灵 active 和可重用性,但也最复杂,因为(可能)大量的文件。虽然选项(B)可能更容易管理事物,但灵 active 较差,并且确实难以进行单元测试。

其他人是如何(或已经)如何构建这些东西的?

最佳答案

我对 requirejs 的好处是它允许您将物理文件抽象为结构化的命名空间。您可以采用方法(A)并在它们自己的文件中创建每个主干类,然后创建一个“命名空间”模块将所有相关类粘合在一起。

// Suppose you have PersonView.js, PersonCollectionjs, PersonModel.js as modules
// create a Person module to function as namespace
define(["PersonModel", "PersonCollection", "PersonView"], function(model, collection, view) {
return {
Model: model,
Collection: collection,
View: view
};
});

这样可以将模块组织在自己的文件中,并让您可以灵活地为每个类编写一个模块,而无需您为应用程序的其余部分公开此组织(我真的不喜欢每次都写 require("PersonView", "PersonModel" ... )需要使用人的对象,消费者更容易和更清晰地声明对“命名空间”而不是独立类的依赖)。

关于backbone.js - 您如何构建您的 Backbone + RequireJS 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12135705/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com