CanJs应用程序结构

时间:2014-04-16 21:08:33

标签: canjs application-structure

我是canJs的新手。寻找一个良好的应用程序结构来构建一个canjs应用程序。我想将模型,控制器和视图/模板逻辑分离到单独的文件夹。 canjs站点中提供的todo应用程序是一个简单的应用程序,它将所有内容写在一个文件中。任何帮助表示赞赏。

提前致谢

2 个答案:

答案 0 :(得分:4)

Justin Meyer总是说"构建大型应用程序的秘诀就是永远不要构建大型应用程序。将您的应用程序分解成小块。然后将那些可测试的,一口大小的碎片组装到您的大型应用程序中。"

让我们假设我在CRUD应用程序中有2个模型,因此我们可以将应用程序分解为小应用程序,让帐户应用程序,交易应用程序,每个应用程序分解成小的可测试部分,以便建议结构:

enter image description here

在这个示例中,帐户和事务是传统的控制器,它可以监听can.route以更新应用程序的状态; list,edit ...等也是从控件扩展的视图,但是它们只监听它们的事件(Single Responsability principal)不同控制器和视图之间的通信是由can.Map和can.compute(Observer模式)来实现的。让它们分离,看一看herehere this也可以提供帮助。

答案 1 :(得分:0)

以前的答案非常好,但您可以使用自耕农自动完成。

您还可以使用yoeman自动创建canjs应用程序结构。

您只需在终端输入此命令:

npm install -g yo
yo canjs

并编写在创建应用期间会询问的目录和应用名称。

如果您想添加AMD支持,请在被要求提供requirejs时输入Y.

有关详细信息,请访问yeoman website