EmberJS - 编写助手
您可以向模板添加额外的功能,并将模型和组件的原始值转换为适合用户的格式。如果您多次使用 HTML 应用程序,则可以从任何 Handlebars 模板添加自定义助手。如果当前上下文发生变化,则 Ember.js 将自动执行助手并使用更新的值更新 DOM。
语法
export function Helper_Name([values]) { //代码在这里 } export default Ember.Helper.helper(Helper_Name);
下表列出了使用辅助名称的不同方式 −
S.No. | 辅助名称 &描述 |
---|---|
1 | 辅助程序参数
您可以通过在辅助程序名称后指定来将多个参数传递给辅助程序。 |
2 | 命名参数
您可以将命名参数与相关值一起传递。 |
3 | 转义 HTML 内容
用于在显示结果时转义 HTML 标签。 |
示例
下面给出的示例实现了助手,它接受多个输入并返回单个输出。使用以下命令创建一个新的助手 −
ember generate helper helper-name
在此示例中,我们创建了名为 writinghelper 的助手。现在打开在 app/helpers/ 下创建的 writinghelper.js 文件。
import Ember from 'ember'; export function formatHelper([value]) { let var1 = Math.floor(value * 100); let cents = value % 100; let var3 = '$'; if (cents.toString().length === 1) return `${var3}${var1}`; } export default Ember.Helper.helper(formatHelper);
您可以在模板中使用花括号内的"writinghelper"帮助程序。打开 index.hbs 文件并写入以下代码 −
Value is : {{writinghelper 5}} {{outlet}}
在上面的代码中,我们已将模板中的帮助程序值传递到格式化字符串中,该模板将美分计数显示为格式化字符串。
输出
运行 ember 服务器;您将收到以下输出 −