Jade变量插值 - 如果属性未定义,则为默认值?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Jade变量插值 - 如果属性未定义,则为默认值?相关的知识,希望对你有一定的参考价值。

我有一个用于更新用户数据的表单,该表单使用现有字段值填充每个输入,因为它存储在数据库中。但是,对于新用户,某些值尚未提交到数据库,因此我希望输入框为空。

为了显示用户数据,我使用Jade的插值功能来查看通过#{user.local}文件传入的routes.js对象。

看起来像这样(片段):

input(type="text", name="firstname", value="#{user.local.firstName}")

这在定义属性时很有效,但它(正确地)将undefined作为文本插入到尚未定义属性的输入中。

如果没有设置变量,有没有办法让我将变量设置为默认值?

就像是:

input(type="text", value="#{user.local.firstName || 'Default Text'"})
答案

使用jade~1.9.2,我试过了

input(type='text' class='form-control' id='line6Name' name='param6' value='#{device.param6||""}')

在我正在写的形式。它为未定义的值提供了一个空字符串的默认值。

如果你转移到收盘双引号的位置,我愿意打赌你所拥有的代码会有效。

从:

input(type="text", value="#{user.local.firstName || 'Default Text'"})

至:

input(type="text", value="#{user.local.firstName || 'Default Text'}")

以上是关于Jade变量插值 - 如果属性未定义,则为默认值?的主要内容,如果未能解决你的问题,请参考以下文章

Jade 复选框选中属性未选中基于条件(如果)

SAS:使用用户定义格式时,如果不匹配,“默认值”是未格式化的输入变量吗?

插值器(Interpolator)的使用说明

学习shell第五天

vue系列教程:插值

Linux拓展之Shell默认变量值