我正在尝试在docpad.coffee中编写一个日期处理函数,除了使用document.mdate而不是post元数据部分中定义的document.date之外,一切都很好。
getFormattedDate: ->
if @document.date
date = new Date(@document.date)
year = date.getFullYear()
monthnumber = date.getMonth()
day = date.getDate()
switch monthnumber
when 0 then monthtext = 'January'
when 1 then monthtext = 'February'
when 2 then monthtext = 'March'
when 3 then monthtext = 'April'
when 4 then monthtext = 'May'
when 5 then monthtext = 'June'
when 6 then monthtext = 'July'
when 7 then monthtext = 'August'
when 8 then monthtext = 'September'
when 9 then monthtext = 'October'
when 10 then monthtext = 'November'
when 11 then monthtext = 'December'
return monthtext + ' ' + day + ', ' + year
<% posts = @getCollection('blog_posts').toJSON() %>
<% for post in posts: %>
<article>
<h1><a href="<%= post.url %>"><%= post.title %></a></h1>
<p class="subtitle"><%= post.subtitle %></p>
<date><%= @getFormattedDate(post.date) %></date>
</article>
<% end %>
---
layout: 'default'
title: 'Test Blog Post'
subtitle: 'This is the post subtitle'
date: '2014-02-24'
---
<article>
<h1><a href="/blog/2014-02-24-another-test-blog-post.html">Another Test Blog Post</a></h1>
<p class="subtitle">This is another post subtitle, it is good.</p>
<date>March 11, 2014</date>
</article>
我是CoffeeScript的新手。这可能不是编写此函数的最佳方法。我可能最终会将docpad.coffee文件转换为js文件。
无论如何,如何让我的getFormattedDate函数使用日期而不是文件修改日期的文档元数据?谢谢!