gpt4 book ai didi

javascript - Mustache.js 对象 # 没有方法 'search'

转载 作者:行者123 更新时间:2023-11-29 10:19:54 26 4
gpt4 key购买 nike

我使用 mustache.js 作为我的客户端模板解决方案,但我遇到了一个问题,我不知道为什么会这样:

首先,这是我的模板:

<ul>
{{#steps}}
<li>
<a href="{{url}}">
<div class="step_visual {{step_status}}">
<span class="step_description">{{description}}</span>
</div>
</a>
</li>
{{/steps}}
</ul>

这是我要传入的 json 对象:

var view = {
"steps": [
{
"url": "complete_profile",
"step_status": "done",
"description": "Complete Proflie"
},
{
"url": "complete_form1",
"step_status": "active",
"description": "Submission of Form 1"
}
]
}

我尝试运行此脚本以在我的应用程序中呈现它

var content = Mustache.render(template, view);
$(target).html(content).hide().fadeIn();

其中 template = 上面的模板 |view = View 对象target 是我希望更改内容的 html 元素

让我感到困惑的是,当我的模板看起来像这样时它工作得很好

{{#steps}}
{{url}}
{{description}}
{{step_status}}
{{/steps}}

或者如果我的模板没有任何循环。

可能是什么错误?你认为这是 mustache 的错误吗?

编辑正如我所见,代码有效,

会不会是我调用函数的方式有问题?

tmplReplaceContent : function(json, tmpl, target) {
var regex = new RegExp("\{{[a-zA-Z\.\_]*\}}"),
view = '';
function setOutput(template) {
var content = Mustache.render(template, view);
$(target).html(content).hide().fadeIn();
}
function doJSON(json) {
view = json;
if(!regex.test(tmpl)){
/* get mustache tmpl from the path */
$.get(msi.vars.tmpl_url + tmpl + '.mustache', setOutput);
} else {
setOutput(tmpl);
}
}
/* json -> check if object */
if (typeof json === 'object') {
doJSON(json);
} else {
/* getJSON from the path */
$.getJSON(msi.vars.base_url + json, doJSON);
}
}

最佳答案

我从来没有这种如释重负的感觉,因为我自己解决了我的问题,首先感谢Tomalak感谢您持续关注我的评论并帮助我解决问题。

如果我继续使用 console.logging 东西,我本可以更早地解决问题,但我停了下来。

我注意到的一件事是 $.get功能给我#<Document> ,这几乎是一个对象,我可以早先推断出响应是一个对象,从我的问题的标题来看,显然它正在返回一个对象。

那么为什么不添加 dataType属性?

function doJSON(data){
dataSource = data;
if (!regex.test(tpl)) {
$.get(msi.vars.tmpl_url + tpl + '.mustache', render, 'text'); // see here
} else {
render(tpl);
}
}

这最终解决了问题。

关于javascript - Mustache.js 对象 #<Document> 没有方法 'search',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14004605/

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