gpt4 book ai didi

javascript - 带有参数的代码生成未按预期工作

转载 作者:行者123 更新时间:2023-11-30 12:33:44 25 4
gpt4 key购买 nike

我创建了使用handlebars 在 HTML 文件中生成一些内容的程序,目前内容是硬编码的,现在我想发送一些参数,当我从模型中传递数据时喜欢关注

that.model = {
func: "Jhon"

};

这是相关的 Handlebars

user.test( {{func}}, function( ) 
{

});

生成的 HTML 文件正常,我得到了 HTML 文件

 ...
user.test( jhon, function( )
{

});

现在我想根据不同用户名的数组生成多次,我应该怎么做?我创建了以下数组

        var userList = {
user: []
};

for (var i = 0; i < selectedUser.length; i++) {
userList.user.push({
name: selectedUser[i].getText()
});
}

这是模板

 {{#each userList.user}}
user.test( {{name}}, function( )
{

});
{{/each}}

在生成过程之后,我得到了我所期望的......首先它不复制条目并放入 [object Object]

user.test( [object Object],[object Object], function( ) 
{

});

假设我有多个用户,比如 jhon、mike、peter

我希望生成的 HTML 文件生成后如下所示:例子 user.test( jhon, function( ) {

});

user.test( mike, function( )
{

});

user.test( peter, function( )
{

});

更新

我已经将我的对象更改为

for (var i = 0; i < selectedUser.length; i++) {
userList.user.push({
selectedUser[i].getText()
});
}

现在我得到了

   user.test( jhon,mike,peter function( ) 
{

});

没有迭代,我想像示例中那样获取它 3 次...如何我用 Handlebars 1.3或者也许还有其他创建循环的方法。

最佳答案

如果不在页面上看到所有错误,很难说出代码中的确切错误位置。

但这是我尝试执行您的任务:

这是 Handlebars 模板:

<script id="template" type="text/x-handlebars-template">
{{#each user}}
user.test( {{name}}, function(){});
{{/each}}
</script>

我使用的 javascript 如下所示:

 var userList = {
user: [{name : "Mike"},{name : "Adam"},{name : "John"}]
};

var source = $("#template").html();
var template = Handlebars.compile(source);

$("#output").html(template(userList));

给出下一个输出:

user.test( Mike, function(){}); 
user.test( Adam, function(){});
user.test( John, function(){});

您可以在这个 jsfiddle 看到它的实际效果

关于javascript - 带有参数的代码生成未按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26778519/

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