gpt4 book ai didi

jquery - 我们可以注册一个写在外部文件上的自定义 Handlebars 助手吗?

转载 作者:行者123 更新时间:2023-12-01 05:53:35 25 4
gpt4 key购买 nike

我正在尝试在我的应用程序中实现 Handlebars 模板。我的问题是,我们可以加载并注册一个写在外部文件上的自定义 Handlebars 助手吗?

以下代码工作正常,但助手位于页面内。

$.post(baseURL,
{
struser:UserName,
password:Password,
alias:"GetData",
parameters:""
},
function(data,status){
if(status="success"){

Handlebars.registerHelper('MenuHelper', function() {
if(this.NextLevel == 1){
return '<a href="' + this.url + '">' + this.text + '</a>';
};
});

var vdata = JSON.parse(data);
var template = Handlebars.templates['ListMenu.tmpl'];
$("#listItem").html(template(vdata));
$("#listItem").listview("refresh");
}else{
alert(connectionError);
};
});
};

我想将这段代码移动到一个单独的文件中,并在需要时将其注册到主文件中。

Handlebars.registerHelper('MenuHelper', function() {
if(this.NextLevel == 1){
return '<a href="' + this.url + '">' + this.text + '</a>';
};
});

不知道如何完成这件事。尝试将其添加到模板文件中,但没有成功。你能帮我解决这个问题吗?

提前致谢

最佳答案

“mu太短”先生的指导激发了我的热情,引导我找到了这个解决方案:-D

我在一个单独的文件中创建了这个函数

function MenuHelper() {
if(this.NextLevel == 1){
return '<a href="' + this.url + '">' + this.text + '</a>';
};
});

并使用这一行在主文件中注册助手

Handlebars.registerHelper("MenuHelper", MenuHelper);

这就是我的完整代码的样子。再次非常感谢“mu太短”先生

$.post(baseURL,
{
struser:UserName,
password:Password,
alias:"GetData",
parameters:""
},
function(data,status){
if(status="success"){
Handlebars.registerHelper("MenuHelper", MenuHelper);
var vdata = JSON.parse(data);
var template = Handlebars.templates['ListMenu.tmpl'];
$("#listItem").html(template(vdata));
$("#listItem").listview("refresh");
}else{
alert(connectionError);
};
});
};

关于jquery - 我们可以注册一个写在外部文件上的自定义 Handlebars 助手吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18546510/

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