fis-postprocessor-smarty-hmr
v0.5.0
Published
fis postprocessor to smarty for start a remote hmr server
Downloads
1
Readme
fis-postprocessor-smarty-hmr
fis postprocessor to smarty for connect a remote page with local hmr server.
Use it with Webpack
!
Usage
Installation
$ npm i fis-postprocessor-smarty-hmr
Setting fis-conf.js
- Setting hotreload.port
// Example
fis.set('hotreload.port', '8888');
- Setting to smarty
By setting config
to fis postprocessor. May contain multiple pages.
// Example
fis.match('*.tpl', {
postprocessor: fis.plugin('smarty-hmr', {
// global exclude (fuzzy match)
globalExcludeRequire: 'bootstrap.css',
config: [{
pagePath: 'page/index.tpl',
bundleName: 'bundle.js',
blockName: 'top-head-extend',
excludeRequire: 'a.js', // can use string or array, eg, exclude: ['a.js', 'b.js'],
valid: true
}]
}),
});
global exclude require
While the postprecessor works in hot mode (via set env process.env.HOT = 'true'
), it will delete all {%require name='xxx'%}
statements. (config rules hitted is addtional premise).
So if we need to keep something NOT deleted from precessor, set globalExcludeRequire
in settings.
Once set, It will affect all tpls.
If we need to exclude to certain tpl, config it with excludeRequire
in config rules.
Config item options
|options|description|type|required|default|
|---|---|---|---|---|
|pagePath|path to page| String |YES
| - |
|bundleName|bundle file name | String | YES
| - |
|blockName|which smarty block to inject bundle file |String| OPTIONAL
| top-head-extend
|
|excludeRequire| exclude js name | String or Array | OPTIONAL
| - |
|valid|if this rules is valid| Boolean | OPTIONAL
| true |
Starting via fis release
You need to set env HOT=true
and start fis release
:
Intergration in npm script
:
$ npm i cross-env -S
"scripts": {
"release": "cross-env HOT=true fis3 release",
}
By running command in cli:
$ npm run release -- [fis3 media]