Riot official webpack loader
npm i riot-tag-loader riot-compiler -D
Add the riot-tag-loader in your webpack.config.js
file
module.exports = {
module: {
loaders: [
{
test: /\.tag$/,
exclude: /node_modules/,
loader: 'riot-tag-loader',
query: {
hot: false, // set it to true if you are using hmr
// add here all the other riot-compiler options riot.js.org/guide/compiler/
// template: 'pug' for example
}
}
]
}
}
Add the riot-tag-loader in your webpack.config.js
file
module.exports = {
module: {
rules: [
{
test: /\.tag$/,
exclude: /node_modules/,
use: [{
loader: 'riot-tag-loader',
options: {
hot: false, // set it to true if you are using hmr
// add here all the other riot-compiler options riot.js.org/guide/compiler/
// template: 'pug' for example
}
}]
}
]
}
}
If you want to enable hmr you will need to install riot-hot-reload
npm i riot-hot-reload -D
And afterwards you should import the riot-hot-reload
API (only once in your bootstrap file) in your project in order to enhance the default riot api
import riot from 'riot'
import 'riot-hot-reload'
// riot will have now a new riot.reload method!!
To save time when bundling, it is possible to disable generating source maps via the sourcemap
loader option:
options: {
sourcemap: false
}
Please check this simple example to see how it's easy to configure webpack with riot