我是canJs的新手。寻找一个良好的应用程序结构来构建一个canjs应用程序。我想将模型,控制器和视图/模板逻辑分离到单独的文件夹。 canjs站点中提供的todo应用程序是一个简单的应用程序,它将所有内容写在一个文件中。任何帮助表示赞赏。
提前致谢
答案 0 :(得分:4)
Justin Meyer总是说"构建大型应用程序的秘诀就是永远不要构建大型应用程序。将您的应用程序分解成小块。然后将那些可测试的,一口大小的碎片组装到您的大型应用程序中。"
让我们假设我在CRUD应用程序中有2个模型,因此我们可以将应用程序分解为小应用程序,让帐户应用程序,交易应用程序,每个应用程序分解成小的可测试部分,以便建议结构:
在这个示例中,帐户和事务是传统的控制器,它可以监听can.route以更新应用程序的状态; list,edit ...等也是从控件扩展的视图,但是它们只监听它们的事件(Single Responsability principal)不同控制器和视图之间的通信是由can.Map和can.compute(Observer模式)来实现的。让它们分离,看一看here,here this也可以提供帮助。
答案 1 :(得分:0)
以前的答案非常好,但您可以使用自耕农自动完成。
您还可以使用yoeman自动创建canjs应用程序结构。
您只需在终端输入此命令:
npm install -g yo
yo canjs
并编写在创建应用期间会询问的目录和应用名称。
如果您想添加AMD支持,请在被要求提供requirejs时输入Y.
有关详细信息,请访问yeoman website