gpt4 book ai didi

javascript - 为什么生成的 ember cli helper 导出函数和 helper?

转载 作者:行者123 更新时间:2023-11-29 14:49:14 28 4
gpt4 key购买 nike

默认情况下,ember-cli 生成的帮助程序如下所示:

import Ember from 'ember';

export function boundLoc(input) {
return input;
}

export default Ember.Handlebars.makeBoundHelper(boundLoc);

我有两个问题可以更好地理解这段代码。

1) 为什么有两个导出?第一次导出是否允许其他 JavaScript 文件导入和使用帮助程序,而第二次导出实际上是将其注册为 Handlebars 帮助程序?

2) 其次,如果代码看起来像这样:

import Ember from 'ember';

export default Ember.Handlebars.makeBoundHelper(function boundLoc(input) {
return input;
});

这是否会将其导出为 Handlebars 模板助手,但不会使导入此助手的其他 JavaScript 文件可以访问 boundLoc() 方法?

最佳答案

1) 是的,有两个导出,因此帮助程序在导入后可以用作其他 JavaScript 中的函数,也可以用作 Handlebars 帮助程序。

在其他 JavaScript 中:

import {
boundLoc
} from 'app/helpers/boundLoc';

boundloc(input);

在模板中:

{{boundloc input}}

2) 是的,您描述的行为是准确的。那只会导出一个 boundHelper 而不是在其他地方使用的功能。您可以随时尝试 POC。

但是请注意,如果您尝试仅导出 boundHelper,则生成的测试可能会遇到问题。参见 this answer了解更多详情。

关于javascript - 为什么生成的 ember cli helper 导出函数和 helper?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28481539/

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