How to use pre-processors?

Thanks to Vue Loader, you can use any kind of pre-processors for your <template>, <script> or <style>: simply use the lang attribute.

Example of our pages/index.vue using Pug, CoffeeScript and Sass:

<template lang="pug">
  h1.red Hello {{ name }}!
</template>

<script lang="coffee">
export default data: ->
  { name: 'World' }
</script>

<style lang="sass">
.red
  color: red
</style>

<style lang="scss">
.red {
  color: red
}
</style>

To be able to use these pre-processors, we need to install their webpack loaders:

npm install --save-dev pug@2.0.3 pug-plain-loader coffeescript coffee-loader node-sass sass-loader

Caught a mistake or want to contribute to the documentation? Edit this page on GitHub!