As vue-loader is for webpack and vueify is for browserify, similarly its for rollup. As we know, webpack and browserify concat stuff and make it runnable in browser. Its difficult to share .vue components. Now roll your Vue components.
With rollup you can break your application into reusable modules.
npm install --save-dev rollup-plugin-vue
Create project with vue-cli!
vue init znck/vue-plugin-simple my-project
Rollup! Rollup! Rollup!
import {rollup} from 'rollup';
import vue from 'rollup-plugin-vue';
rollup({
entry: 'index.js',
plugins: [vue()]
});
Below is how you can use it from the command line with Bublé.
Run rollup -c
and it will find the config.
// rollup.config.js
import vue from 'rollup-plugin-vue'
import buble from 'rollup-plugin-buble' // rollup-plugin-babel also works
export default {
entry: 'index.js',
plugins: [
vue(),
buble()
]
}
vue({
// Filename to write all styles to
css: 'bundle.scss',
// Callback that will be called ongenerate with two arguments:
// - styles: the contents of all style tags combined
// - styleNodes: an array of style objects: [{lang: 'css', content: 'body { color: green }'}]
css: function (styles, styleNodes) {
writeFileSync(cssPath, styles)
}
// Disable any style output or callbacks
css: false,
// Default behaviour is to write all styles to the bundle destination where .js is replaced by .css
css: null
})
vue({
// Compile templates to render functions (Vue 2 only)
compileTemplate: true,
})
Use any option from https://github.com/kangax/html-minifier
vue({
htmlMinifier: {}
})
Please see CHANGELOG for more information what has changed recently.
$ npm run test
Please see CONTRIBUTING and CONDUCT for details.
If you discover any security related issues, please email [email protected] instead of using the issue tracker.
The MIT License (MIT). Please see License File for more information.