gpt4 book ai didi

javascript - 通过 javascript 访问 Handlebars 变量

转载 作者:IT老高 更新时间:2023-10-28 23:14:09 25 4
gpt4 key购买 nike

我正在为 express js 框架生成一个 Handlebars View ,我需要从一个单独的 JavaScript 文件中访问我传递给 View 的变量。

例如:

var foo = {{user.name}}

有人有想法吗? helper ?

最佳答案

user.name 的值如果要将其包含在 <script> 中,则需要将其作为有效的 JavaScript 表达式输出,它将重新评估它作为代码。

目前,如果 user.name"john.doe"例如,生成的脚本将是:

var foo = john.doe; // `john` is treated as an object with a `doe` property

user.name至少需要用引号引起来,以便将其理解为字符串值/文字。

var foo = "{{user.name}}";
// result
var foo = "john.doe";

您还可以利用 JSON 和 JavaScript 在语法上的相似性,输出 JavaScript 可以理解为表达式的 JSON,并且已经包含引号。

Handlebars.registerHelper('json', function (content) {
return JSON.stringify(content);
});
var foo = {{{json user.name}}};
// result
var foo = "john.doe";

注意三重 {{{...}}}在最后一个示例中禁用 HTML 编码,因此您不会得到:

var foo = &quot;john.doe&quot;

关于javascript - 通过 javascript 访问 Handlebars 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30767928/

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