我正在学习来自传统JavaScript背景的流星框架,通常我们定义一个util.js
或application.js
保存有用的辅助函数集合,可以被各种JavaScript组件和其他JavaScript函数使用在各种不同的文件中定义。我在Meteor中寻找类似的东西。为了更清楚,我将做一个非常简单的例子。
在我的Meteor应用程序中,我想定义一个常用的JavaScript函数来检查字符串是否为空,如下所示utils.js
function isEmpty(val) {
return !$.trim(val);
}
如何在单独的文件中定义函数(我不想在特定于某些功能的模板文件中混合常用函数),以便在包含模板帮助程序和事件的所有其他JavaScript文件中都可以使用它?例如,在template.js
01. Template.myform.events({
02. "submit .js-save-data": function(event) {
03. var title = event.target.title.value;
04. console.log('Is title empty: ' + isEmpty(title));
05. }
06. });
07.
08. Template.mylist.helpers({
09. doSomething: function() {
10. console.log('Checking empty: ' + isEmpty('some value');
11. }
12. });
在上面的示例中,如何从isEmpty
(第4行)和helper
(第10行)访问events
功能?
更新:我可以这样做老式的方式,比如在一个单独的文件中定义全局范围函数,然后可以在helpers和js文件中访问它,但是如果有任何流星方式,我正在寻找一些东西吗?就像使用Template.registerHelper
一样。