Package Exports
- posthtml-load-options
- posthtml-load-options/lib/options.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (posthtml-load-options) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
Load Options
Autoload Options for PostHTML
Install
npm i -D posthtml-load-options
Usage
package.json
Create a posthtml
section in package.json
.
Root
|– client
|– public
|
|- package.json
{
"dependencies": {
"posthtml-sugarml": "^1.0.0"
},
"posthtml": {
"parser": "posthtml-sugarss",
"from": "path/to/src/file.html",
"to": "path/to/dest/file.html"
}
}
.posthtmlrc
Create a .posthtmlrc
file.
Root
|– client
|– public
|
|-.posthtmlrc
|- package.json
{
"parser": "posthtml-sugarss",
"from": "path/to/src/file.html",
"to": "path/to/dest/file.html"
}
posthtml.config.js
Create a posthtml.config.js
file.
Root
|– client
|– public
|
|- posthtml.config.js
|- package.json
module.exports = (ctx) => {
return {
parser: ctx.ext ==='.sml' ? 'posthtml-sugarss' : false,
from: 'path/to/src/file.html',
to: 'path/to/dest/file.html'
}
}
Options
parser
:
parser: 'posthtml-sugarss'
from
:
from: 'path/to/dest/file.html'
to
:
to: 'path/to/dest/file.html'
render
:
render: 'posthtml-jsx'
Context
When using a function in (posthtml.config.js)
, it's possible to pass context to posthtml-load-options
, which will be evaluated before loading your options. By default ctx.env (process.env.NODE_ENV)
and ctx.cwd (process.cwd())
are available.
Example
posthtml.config.js
export default config = (ctx) => {
return {
parser: ctx.ext === '.sml' ? 'posthtml-sugarml' : false,
from: 'client/index.html',
to: 'public/index.html'
}
}
import { dirname } from 'path'
import { readFileSync } from 'fs'
import posthtml from 'posthtml'
import optionsrc from 'posthtml-load-options'
const sml = readFileSync('./client/index.sml', 'utf8')
const ctx = { ext: dirname(sml) }
optionsrc(ctx).then((options) => {
posthtml()
.process(sml, options)
.then((result) => console.log(result.html))
}))
Maintainer
Michael Ciniawsky |