5
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

webpackでcoffeescript2を使おう(vueもあるよ)

Last updated at Posted at 2017-09-21

とうとう待望のcoffeescript2が正式にリリースされました。
早速使ってみましょう。

coffeescript2のインストール

普通にインストールすればいいです。

$ yarn add -D coffeescript

注意点としては2.0になった段階でcoffee-scriptからcoffeescriptに名前が変わったことです。

coffee-scriptを既にインストールしていた場合は削除しておきましょう。

$ yarn remove coffee-script

coffee-loaderも0.8.0からcoffeescript2に対応しているので、すでに入っている場合はupgradeします。

$ yarn upgrade coffee-loader

なければインストール

$ yarn add -D coffee-loader

babelのインストール

coffeescriptをupgradeするだけならこれで終わりなのですが、coffeescript2はes2015にコンパイルされるため、古いブラウザで動かすためにはbabel等で更にコンパイルする必要があります。

babelをインストールしましょう。
おそらくこれが最小構成です。

$ yarn add -D babel-core babel-loader babel-preset-es2015

.babelrcをプロジェクトのルートディレクトリに置きます。

.babelrc
{
  "presets": ["es2015"]
}

webpackを書き換えて、babelを通してあげます。

webpack.config.coffee
      {
        test: /\.coffee$/
        loader: 'babel-loader!coffee-loader'
      }

以上で終了!
おめでとう。

vue-loaderの設定

ここから先はvue-loaderを使う場合だけの設定です。

webpack.configのvue-loaderの部分を書き換えてあげます。

webpack.config.coffee
      {
        test: /\.vue$/
        loader: 'vue-loader'
        options:
          loaders:
            coffee: 'babel-loader!coffee-loader'
      }

上記の設定の場合vueファイルのlangを省略せずに書く必要があります。
(langはsublimeなどでハイライトするのに有用な情報なので省略しないのが吉)

hoge.vue
<!-- langを省略しない -->
<script lang="coffee">
module.exports = {
  name: 'Hoge'
}
</script>

これでちゃんとコンパイルされるはずです。
お疲れ様でした!

5
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?