noddity-view-model
example
var level = var Retrieval = var Butler = var Renderer = var ViewModel = var renderTemplate = var butlerOpts = refreshEvery: 600000 cacheCheckIntervalMs: 10000 var db = './database'var retrieve = './www/'var butler = retrieve db butlerOptsvar renderer = butler String var setCurrent = butler renderer renderTemplate
api
var ViewModel =
var setCurrent = ViewModel(butler, renderer, ractiveTemplate[, ractiveData])
butler
is an instantiated noddity butler.renderer
is an instantiated noddity renderer.ractiveTemplate
is a ractive-flavored string template. (Like a handlebars template.)ractiveData
is the initial data that the internal ractive instance starts with. Optional, defaults to{}
.- Returns
setCurrent
.
setCurrent(page, cb)
page
is the markdown page that should be rendered.cb
is a function that has the following arguments:err
is an error, ornull
.html
is the compiled html.
notes on templates
Here is a list of things you can use in your template:
{{html}}
{{current}}
{{date}}
{{page}}
{{postList}}
- Properties on the
ractiveData
object:
ractiveTemplate = '{{html}}\n{{current}}\n{{date}}\n{{page}}\n{{postList}}\n{{thingy}}'ractiveData = thingy: 3
install
With npm do:
npm install noddity-view-model