Javascript 如何用空字符串替换默认日期

Javascript 如何用空字符串替换默认日期,javascript,date,momentjs,Javascript,Date,Momentjs,我有一个html跨度,在页面中使用moment.js显示日期: <span data-bind="text: moment(new Date(dueDate())).format('MM/DD/YYYY')"></span> 你必须加一张支票。若值存在,则解析值,否则显示为空 this.getDateInFormat=函数(str){ var d=力矩(str,默认_格式); 返回str&d.isValid()?d.format('MM/DD/YYYY'):''; }

我有一个html跨度,在页面中使用moment.js显示日期:

<span data-bind="text: moment(new Date(dueDate())).format('MM/DD/YYYY')"></span>

你必须加一张支票。若值存在,则解析值,否则显示为空

this.getDateInFormat=函数(str){
var d=力矩(str,默认_格式);
返回str&d.isValid()?d.format('MM/DD/YYYY'):'';
}
如前所述,您应该将所有解析逻辑移动到viewModel中。这样,代码是通用的,视图是干净的


.

使用if条件,测试字符串是否为空。我不确定如何在此上下文中添加
if
。您可以检查此问题的答案
data bind=“text:dueDate()?矩(dueDate(),format)。format('MM/DD/YYYY')”
。另外,我建议您将
dueDate
设置为一个字符串变量,并在
vm
中处理值,而不是
view
什么是
DEFAULT\u FORMAT
参数?如果您正在解析字符串,构造函数需要一种格式。它只是一个保存“DD/MM/YYYY”的变量。你应该用小提琴读代码我没有注意到小提琴,正在工作,非常感谢!
<div class="col-md-8">
    <ul>
      <li>DATE <span data-bind="text: moment(new Date(sDate())).format('MM/DD/YYYY')"></span></li>
      <li>Due date <span></span><span data-bind="text: moment(new Date(dueDate())).format('MM/DD/YYYY')"></span>
           <p>Days Remaining: <span class="days-remaining" data-bind="text: daysRemaining"></span></p>
      </li>
      <li>Date 2 <span></span><span data-bind="text: moment(new Date(date2())).format('MM/DD/YYYY')"></span>
           <p>Days Remaining: <span class="days-remaining" data-bind="text: daysRemaining"></span></p>
      </li>
    </ul>
</div>