2.0.0 • Published 10 years ago
vue-component-compiler v2.0.0
vue-component-compiler
This module compile a single file Vue component like the one below into a CommonJS module that can be used in Browserify/Webpack/Component/Duo builds.
Currently supported preprocessors are:
- stylus
- less
- scss (via
node-sass
) - jade
- coffee-script
- myth
- es6 (via
6to5
akababel
)
Also see Registering Custom Pre-Processors.
Example
// app.vue
<style>
.red {
color: #f00;
}
</style>
<template>
<h1 class="red">{{msg}}</h1>
</template>
<script>
module.exports = {
data: function () {
return {
msg: 'Hello world!'
}
}
}
</script>
You can also mix preprocessor languages in the component file:
// app.vue
<style lang="stylus">
.red
color #f00
</style>
<template lang="jade">
h1(class="red") {{msg}}
</template>
<script lang="coffee">
module.exports =
data: ->
msg: 'Hello world!'
</script>
And you can import using the src
attribute:
<style lang="stylus" src="style.styl"></style>
<template src="template.html"></template>
<script src="./scripts/main.js"></script>
API
var compiler = require('vue-component-compiler')
// filePath should be an absolute path, and is optional if
// the fileContent doesn't contain src imports
compiler.compile(fileContent, filePath, function (err, result) {
// result is a common js module string
})
Registering Custom Pre-Processors
Create a vue.config.js
file at where your build command is run (usually the root level of your project):
module.exports = function (compiler) {
// register a compile function for <script lang="es">
compiler.register({
lang: 'es',
type: 'script',
compile: function (content, cb) {
// transform the content...
cb(null, content)
}
})
}
2.0.0
10 years ago
1.1.12
10 years ago
1.1.11
10 years ago
1.1.10
10 years ago
1.1.9
10 years ago
1.1.8
10 years ago
1.1.7
10 years ago
1.1.6
10 years ago
1.1.5
10 years ago
1.1.4
10 years ago
1.1.3
10 years ago
1.1.2
10 years ago
1.1.1
10 years ago
1.1.0
11 years ago
1.0.3
11 years ago
1.0.2
11 years ago
1.0.1
11 years ago
1.0.0
11 years ago