我注意到在Handlebars.js模板中定义以下内容可以正常工作:
<input name="username" value="{{user.name}}">
即使在以下情况下也能正常工作:
但是,我在质疑这样做是否合适。背景中发生了什么?以下是不是更合适,虽然增加了更多的混乱?
<input name="username" value="{{#if user}}{{#if user.name}}{{user.name}}{{/if}}{{/if}}">
感谢。
答案 0 :(得分:1)
我没有看到这样做的好处。这引入了更多的代码混乱,没有额外的可读性,也没有额外的功能。
所以是的,如果获得未定义的内容不会破坏您的页面,那么只需调用它就可以不检查它是否存在。
但是,如果不存在的内容会破坏您的页面结构,那么您一定要检查以确保它首先存在。
例如,如果您不希望显示评论部分,除非实际显示评论,您将使用此处描述的if块。
但它看起来更像是这样:
{{#if user.name}}
<input name="username" value="{{user.name}}">
{{/if}}