Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Use mithril views to render server side

License

NotificationsYou must be signed in to change notification settings

MithrilJS/mithril-node-render

Repository files navigation

zulip, join chatBuild Statusrethink.jsno dependencies

Use mithril views to render server side

Demo

Usage Example

Installation

npm install mithril-node-render

Usage

// Make Mithril happyif(!global.window){global.window=global.document=global.requestAnimationFrame=undefined}varm=require('mithril')varrender=require('mithril-node-render')render(m('span','huhu')).then(function(html){// html === '<span>huhu</span>'})varhtml=render.sync(m('span','huhu'))// html === '<span>huhu</span>'

Async components

As you see the rendering is asynchronous. It lets you await certain data from withinoninit hooks.

varmyAsyncComponent={oninit:function(node,waitFor){waitFor(newPromise(function(resolve){node.state.foo='bar'resolve()}))},view:function(node){returnm('div',node.state.foo)}}render(myAsyncComponent).then(function(html){// html === '<div>bar</div>'})

Sync rendering

You can also render synchronously. You just don't get thewaitFor callback.

varmyAsyncComponent={oninit:function(node,waitFor){// waitFor === undefinednewPromise(function(resolve){node.state.foo='bar'resolve()})},view:function(node){returnm('div',node.state.foo)}}varhtml=render.sync(myAsyncComponent)// html === '<div>bar</div>'

Options

Optionally pass in options as an object:render(component, options).

The following options are supported:

escapeAttribute(value)Default: render.escapeAttributeA filter function for attribute values. Receives value, returns what is printed.

escapeText(value)Default: render.escapeTextA filter function for string nodes. Receives value, returns what is printed.

strictDefault: falseSet this to true to close all empty tags automatically. Default is standard HTML mode where tags like<br> and<meta> are allowed to implicitly close themselves. This should be set totrue if you're rendering XML-compatible HTML documents.

xmlDefault: falseSet this to true to render as generic XML instead of (possibly XML-compatible) HTML. Default is HTML mode, where children of void elements are ignored. This impliesstrict: true.

See also

About

Use mithril views to render server side

Topics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

    Packages

    No packages published

    Contributors23


    [8]ページ先頭

    ©2009-2025 Movatter.jp