有没有办法组织Meteor模板,因此不难弄清楚数据上下文是什么?

时间:2015-04-10 20:35:54

标签: meteor

随着我的Meteor项目的发展,我添加了更多的模板,部分和帮助程序,因此很难弄清楚它的数据上下文是什么。然后我必须在帮助函数中console.log(this)来弄清楚我正在处理的数据是什么。

是否有人有命名方案或任何其他策略来处理这个问题?

或者这个混乱只是一个标志我没有正确地模块化并且应该重构一切?

1 个答案:

答案 0 :(得分:3)

对我来说,每个模块都有一个文件夹。每个文件夹都包含helpers.jsevents.js," ons" (onCreated.jsonDestroyed.jsonRendered.js),最后是templates.html。如果您的项目很大,请将这些项目拆分为单个子文件夹以进行必要的CRUD操作(我有一个create文件夹和一个update文件夹,因为更新模板中会进行读取和删除。

我的模板名称冗长而冗长,但没错,WebStorm可以很好地猜测我想要什么。例如,如果我有一些infowindow列出了与客户关联的所有地址:clientMapclientMapPopupclientMapPopupLocationList clientMapPopupLocationListItem

关于数据上下文,它通常很容易看到,因为我的助手是向上下文添加内容的助手。虽然我诚实地试图避免使用它,除非我在{{#each}}中,因为恕我直言,像抓住祖父母的情境既不优雅也不健壮。相反,我有一个我创建的临时模块对象&破坏路线变化。

所以如果我的全局对象是Global = {}。在onCreatedonDestroyed我写Global.Module = {}然后,我可以创建我想要的所有模块范围的变量(ReactiveVars,ReactiveDicts,本地集合,基元,客户端标记对象等)。

所有这一切,做你做的事情&看着我的架构js(例如collections/clients.js)仍然是看到你想要的最快/最轻率的方式。你现在得到了什么。