我正在使用 twix 库来检查冲突的日期范围,但我所做的任何事情似乎都不会触发检查。例如,这是我一直在使用的测试:
eventTimeRange = moment("18-01-2018 02:00").twix("18-01-2018 03:00");
newEventTimeRange = moment("18-01-2018 02:00").twix("18-01-2018 03:00");
console.log(eventTimeRange.overlaps(newEventTimeRange)) //false
console.log(eventTimeRange.engulfs(newEventTimeRange)) //false
console.log(eventTimeRange.equals(newEventTimeRange)) //false
我在这里做错了什么?
最佳答案
因为您的输入不是符合 ISO 8601 的格式。
参见moment(String, String)
和 twix 的 Inputs accepted .
这是一个实时示例:
eventTimeRange = moment("18-01-2018 02:00", 'DD-MM-YYYY HH:mm').twix("18-01-2018 03:00", 'DD-MM-YYYY HH:mm');
newEventTimeRange = moment("18-01-2018 02:00", 'DD-MM-YYYY HH:mm').twix("18-01-2018 03:00", 'DD-MM-YYYY HH:mm');
console.log(eventTimeRange.overlaps(newEventTimeRange)) // true
console.log(eventTimeRange.engulfs(newEventTimeRange)) // true
console.log(eventTimeRange.equals(newEventTimeRange)) // true
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.20.1/moment.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/twix.js/1.2.1/twix.min.js"></script>
关于javascript - 为什么这些 twix 范围测试会失败?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48303582/