gpt4 book ai didi

javascript - 有什么方法可以将函数的范围限定到 Meteor 中的一组不同模板吗?

转载 作者:行者123 更新时间:2023-11-28 00:10:19 24 4
gpt4 key购买 nike

假设我有多个模板:

<template name="orderForm">

{{> photographyServicesForm}}
{{> videographyServicesForm}}
{{> onlineProductsForm}}

</template>

然后是相应模板的JS文件(包括渲染的、创建的、帮助器、事件等)

photography_services_form.js
videography_services_form.js
online_products_form.js
order_form.js

我希望在 onlineProductsFormphotographyServicesForm 之间共享函数,但不希望在 videographyServicesForm 之间共享函数。

我不想将所有函数都放入 order_form.js 文件中,因为那样它会变得庞大且笨重。我显然也不想在每个不同的模板中重复相同的函数定义。

有什么方法可以做到这一点,还是我必须将所有内容都放入 order_form.js 文件中?

最佳答案

创建另一个 JS 文件,在其中放置一些模板之间的共享函数,并在声明它们时不使用 var 关键字将它们导出到全局命名空间。

lib/order_form_common.js(首先使用 lib 文件夹前缀加载此文件)

sharedOnRendered = function(){};

sharedHelpers = {
helper1: function(){},
helper2: function(){}
};

sharedEvents = {
"click p": function(){},
"submit form": function(){}
};

最后,在相应的模板逻辑JS文件中使用这些共享定义。

photography_services_form.js

Template.photographyServicesForm.onRendered(sharedOnRendered);

Template.photographyServicesForm.helpers(sharedHelpers);

Template.photographyServicesForm.events(sharedEvents);

关于javascript - 有什么方法可以将函数的范围限定到 Meteor 中的一组不同模板吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30955991/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com