我一直在浏览DocPad网站和其他文档,但还没有找到任何似乎可以解释如何合并动态内容的内容,以及可能涉及哪些类型的限制?
作为一个相对初学者,我想知道是否有人可以帮助我更好地理解将动态内容整合到DocPad中的方法……?例如AJAX和动态服务器端脚本,用于在单击某个标记时动态将图片从Flickr加载到网页中…
谢谢.
>通过regenerateEvery configuration option.这将按照您指定的频率重新生成您的网站.这与feedr等插件相结合,可以从远程源代码中提取数据(比如您最新的社交活动),以及repocloner克隆并在项目中保持最新的git存储库.这个选项的好处是它很容易做到,并提供动态网站的幻觉.例如,Benjamin Lupton Website应用此方法来保持主页上的统计信息以及最新的侧栏中的社交数据.每小时它都会根据最新信息进行再生.使它快速,而且动态不明显.
>通过动态meta-data property.当设置为true时,这告诉DocPad服务器我们应该在每个请求上重新呈现该文档,而不是仅仅一次.这在Kitchensink Skeleton search pages和misc forms中很有效.这种方式与PHP开发最相似.
>通过serverExtend event.此事件允许您挂钩并扩展DocPad服务器,允许您添加额外的服务器端逻辑,处理等.常见的用例是向服务器添加额外的路由以处理路由别名,添加表单处理(如联系表单),或为Backbone.js应用程序添加RESTULful接口. DocPad Website使用它到add extra routing and a regenerate post-receive hook for the documentation. NodeChat Skeleton使用它到add the Socket.io server-side logic.
>通过API.这种方式是最复杂的,但如果你只是希望DocPad成为现有node.js应用程序的一小部分,那么这将是非常有益的.有了这个,您可以在代码中创建DocPad实例并与之交互. grunt-docs grunt任务利用这个:)