Javascript 如何用空字符串替换默认日期
我有一个html跨度,在页面中使用moment.js显示日期: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'):''; }
<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>