gpt4 book ai didi

javascript - 如何让 Handlebars 模板返回 DOM 元素而不是 HTML 字符串?

转载 作者:行者123 更新时间:2023-11-28 20:33:38 24 4
gpt4 key购买 nike

我在 Backbone.js 应用程序中使用 Handlebars。我想知道如何让 Handlebars 模板返回 DOM 元素而不是字符串?

这就是我的意思:

define([
'underscore',
'backbone',
'handlebars',
'text!templates/myTemplate.hbs'
], function(_, Backbone, handlebars, template) {
...
...
render: function() {
// This returns me a string of HTML, I would like to be able
// to get actual DOM elements so that I can use appendChild
// and insertBefore etc.
var hbTemplate = Handlebars.compile(template);
var templateString = hbTemplate(/* some json data */);
},
...
...

我尝试使用 DOMParser 将 HTML 字符串解析为 DOM 元素,但由于 Handlebars 模板中存在大量额外空格,因此出现语法错误。但如果 Handlebars 能够以某种方式返回 DOM 元素而不是我自己解析它们,那就太好了。

最佳答案

你可以将输出传送到 jQuery(如果这是一个选项),据我所知,它会解析 Handlebars 模板。不知道 jQuery 是否是一个选项,但类似:

var hbTemplate = Handlebars.compile(template);
var templateJqueryDom = $(hbTemplate(/* some json data */))

关于javascript - 如何让 Handlebars 模板返回 DOM 元素而不是 HTML 字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15866014/

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