UNPKG

@vant/compiler

Version:

compile vue single file component to js file.

23 lines (18 loc) 664 B
import babel from './babel'; import inject from './inject'; import parseTemplate from './template'; import * as compiler from 'vue-template-compiler'; module.exports = function(code, config = {}) { const component = compiler.parseComponent(code); const { styles, template } = component; const script = component.script || { content: 'export default {};' }; let js; if (template) { const render = parseTemplate(template, config.template); js = babel(inject(script.content, render), config.babel); } else { js = babel(script.content, config.babel); } const css = styles && styles[0] ? styles[0].content : ''; return { js, css }; };