Jquery 错误:view.hlp(…)不是jsrender中的函数
我使用jsrender在网格中映射模板。如果条件如下,我在jsrender中调用一个方法Jquery 错误:view.hlp(…)不是jsrender中的函数,jquery,html,templates,if-statement,jsrender,Jquery,Html,Templates,If Statement,Jsrender,我使用jsrender在网格中映射模板。如果条件如下,我在jsrender中调用一个方法 @section scripts{ $.views.helpers({ isMobile: function () { return ("@IsMobileDevice" == "False" && (window.innerWidth < 1200)); } }); } @节脚本{ $.views.helper
@section scripts{
$.views.helpers({
isMobile: function () {
return ("@IsMobileDevice" == "False" && (window.innerWidth < 1200));
}
});
}
@节脚本{
$.views.helpers({
isMobile:function(){
返回(“@IsMobileDevice”==“False”&&(window.innerWidth<1200));
}
});
}
{{if~isMobile()}
show
{{/if}
但我得到了一个错误:
hlp(…)不是一个函数
这里出了什么问题?发布Razor代码时很难提供帮助。您需要显示加载到浏览器中的代码,而不是服务器代码,因为您的问题是关于客户端JsRender的
似乎
isMobile
helper不是一个函数。可能在运行模板呈现代码之前,没有在浏览器中加载帮助器定义代码-或者服务器代码中存在问题/错误,因此isMobile
帮助器在浏览器中注册,但不是一个函数 我也遇到过类似的问题,我的helper方法的错误在于我在初始化之前调用了helper方法。参见下面的示例
错误代码
<script type="text/x-jsrender">
{{if ~isMobile()}}
<li class="show">Show</li>
{{/if}}
$.views.helpers({
isMobile: function () {
return ("@IsMobileDevice" == "False" && (window.innerWidth < 1200));
}
});
</script>
<script type="text/x-jsrender">
$.views.helpers({
isMobile: function () {
return ("@IsMobileDevice" == "False" && (window.innerWidth < 1200));
}
});
{{if ~isMobile()}}
<li class="show">Show</li>
{{/if}}
</script>
{{if~isMobile()}
show
{{/if}
$.views.helpers({
isMobile:function(){
返回(“@IsMobileDevice”==“False”&&(window.innerWidth<1200));
}
});
正确的代码
<script type="text/x-jsrender">
{{if ~isMobile()}}
<li class="show">Show</li>
{{/if}}
$.views.helpers({
isMobile: function () {
return ("@IsMobileDevice" == "False" && (window.innerWidth < 1200));
}
});
</script>
<script type="text/x-jsrender">
$.views.helpers({
isMobile: function () {
return ("@IsMobileDevice" == "False" && (window.innerWidth < 1200));
}
});
{{if ~isMobile()}}
<li class="show">Show</li>
{{/if}}
</script>
$.views.helpers({
isMobile:function(){
返回(“@IsMobileDevice”==“False”&&(window.innerWidth<1200));
}
});
{{if~isMobile()}
show
{{/if}
希望这会有帮助