Rendering Engine for turning Vue files into Javascript Objects
$ npm install --save express-vue-renderer
Include the library at the top level like so
const ExpressVueRenderer = require('express-vue-renderer');
The library returns a function called renderer
It takes 3 params, 2 required and one optional.
ExpressVueRenderer.renderer(componentPath, data, [vueOptions])
The promise returns an object called app
, or an error
ExpressVueRenderer.renderer(componentPath, data, [vueOptions])
.then(app => {
//App is an object that contains 4 parts
head: //a string of the head,
app: //the VueJS App Object,
script: //the script string including the <script> elements,
template: //the template, if no template was passed into vueOptions,
//it uses a backup template
})
.catch(error => {
//Do something with the error here
});
{
rootPath: path.join(__dirname, '/../tests'),
viewsPath: 'vueFiles',
componentsPath: 'vueFiles/components',
layout: {
start: '<body><div id="app">',
end: '</div></body>'
},
vue: {
head: {
meta: [{
property: 'og:title',
content: 'Page Title'
},
{
name: 'twitter:title',
content: 'Page Title'
},
{
script: 'https://unpkg.com/vue@2.3.4/dist/vue.js'
}, {
name: 'viewport',
content: 'width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no'
}
]
}
},
data: {
thing: true
}
Apache-2.0 © Daniel Cherubini