将DateTime属性添加到SpineJS模型

时间:2012-12-10 21:20:35

标签: coffeescript spine.js

我正在寻找处理日期和时间的最佳方式我的SpineJS型号上的时间。我正在努力创建各种事件日历。第一个障碍是显示一个漂亮的6周日历。它必须从上个月的最后一个星期日开始,到下个月的第一个星期六结束。

我正在使用DateJs(http://www.datejs.com/)并在View模板中处理一些日期事项,但希望将其中一部分移动到模型中以清理所述视图。

我正在处理的功能叫做'firstDay'。这将找到我们开始日历的日期(上个月的最后一个星期日)

  firstDay: () ->
    Date.today().set({month: @month}).moveToFirstDayOfMonth().moveToDayOfWeek(0, -1)

我的尝试用法:

<% day = cal.firstDay %>

  // initialize the table header, etc

  <tbody>
    <% while !day.equals(cal.lastDay): %>
    // render each calendar tile/square

这是错误:

Uncaught TypeError: Object function () {
      return Date.today().set({
        month: this.month
      }).moveToFirstDayOfMonth().moveToDayOfWeek(0, -1);
    } has no method 'equals'

所以我的Spine模型似乎没有意识到DateJS ......我想这是有道理的。看起来函数本身正在返回,而不是函数的评估......如果这是有意义的。

如果将日期和时间纳入我的模型,最好的方法是欣赏这里的任何指导。

感谢

1 个答案:

答案 0 :(得分:0)

所以我的问题很简单......语法。作为coffescript和spinejs的新手,我想我一下子看了太多东西而错过了明显的东西。

从coffeescript / eco模板调用此函数的正确方法是:

<% day = cal.firstDay() %>

我在函数调用中缺少括号。如果我将来再次遇到错误,这个错误应该很容易识别。事实上,它本来应该是显而易见的......再次,太多的新事物。