有没有一种方法可以组织Meteor模板,这样它就不会';不难弄清楚是什么';数据上下文是什么?
随着我的Meteor项目的发展,我添加了更多的模板、部分和助手,弄清楚它的数据上下文变得越来越困难。然后我必须有没有一种方法可以组织Meteor模板,这样它就不会';不难弄清楚是什么';数据上下文是什么?,meteor,Meteor,随着我的Meteor项目的发展,我添加了更多的模板、部分和助手,弄清楚它的数据上下文变得越来越困难。然后我必须console.log(this)在一个helper函数中找出我正在处理的数据 有人有命名方案或其他策略来处理这个问题吗 或者,这种混乱只是一种迹象,表明我无法正确地模块化东西,应该重构所有东西?对我来说,每个模块都有一个文件夹。每个文件夹包含helpers.js,events.js,“ons”(onCreated.js,onestroyed.js,onRendered.js)以及最后的
console.log(this)
在一个helper函数中找出我正在处理的数据
有人有命名方案或其他策略来处理这个问题吗
或者,这种混乱只是一种迹象,表明我无法正确地模块化东西,应该重构所有东西?对我来说,每个模块都有一个文件夹。每个文件夹包含
helpers.js
,events.js
,“ons”(onCreated.js
,onestroyed.js
,onRendered.js
)以及最后的templates.html
。如果您的项目很大,请将其拆分为单独的子文件夹,以便执行必要的CRUD操作(我有一个create
文件夹和一个update
文件夹,因为读取和删除发生在更新模板中
我的模板名称很长很详细,但没关系,WebStorm很好地猜测了我想要什么。例如,如果我有一个信息窗口列出了与客户端相关的所有地址:clientMap
,clientMapPopup
,ClientMapPopulLocationList
ClientMapPopulLocationListItem
关于数据上下文,通常很容易看到,因为我的助手是向上下文添加内容的人。尽管我真诚地尝试避免使用它,除非我在{{each}
因为IMHO抓取祖父母上下文之类的东西既不优雅也不健壮。相反,我有一个临时模块对象,我在路由更改时创建并销毁它
因此,如果我的全局对象是global={}
。在onCreated
和onestroyed
中,我编写global.Module={}
,那么我可以创建我想要的所有模块范围的变量(ReactiveVars、ReactiveDicts、本地集合、原语、客户机标记对象等)
综上所述,看看我的模式js(例如,collections/clients.js
),做你所做的事情仍然是最快/最不考虑的方式来了解你想要什么和你目前得到什么