この記事の目次
chevron_right
環境
chevron_right
環境準備
chevron_right
Scoop(Macでいうbrew)を入れる
chevron_right
yarnを入れる
chevron_right
必要なJSモジュールを入れる
chevron_right
コンポーネントファイルの準備
chevron_right
コンポーネントファイルを単一ファイルコンポーネント化するためのJS
chevron_right
rollup.jsのコンフィグファイルを作成
chevron_right
読み込み用のHTMLファイルの作成
chevron_right
コンパイル
chevron_right
エラーで表示されない場合
chevron_right
参考
環境
- windows 10 home
環境準備
Scoop(Macでいうbrew)を入れる
Powershellで以下のコマンドを実行
iwr -useb get.scoop.sh | iex
yarnを入れる
scoop install yarn
必要なJSモジュールを入れる
> yarn add vue rollup-plugin-vue rollup-plugin-node-resolve vue-template-compiler rollup
- vue
- vuejs本体
- rollup-plugin-vue
- rollupjsでvuejsをコンパイルするためのライブラリ
- rollup-plugin-node-resolve
- node_modulesフォルダから必要なファイルを抽出するモジュール
- vue-template-compiler
- vueの単一ファイルコンポーネントをコンパイルするプラグイン
- rollup
- rollupjsの本体
コンポーネントファイルの準備
TestComponent.vue
ファイルを作成します
<template>
<div class="example">{{ message }}</div>
</template>
<script>
export default {
data () {
return {
message: 'Hello world!'
}
}
}
</script>
<style>
.example {
color: red;
}
</style>
コンポーネントファイルを単一ファイルコンポーネント化するためのJS
main.js
とします
import TestComponent from './TestComponent.vue';
import Vue from 'vue/dist/vue.esm.browser.js'
new Vue({
el: "#app",
components: {
"TestComponent": TestComponent,
},
});
rollup.jsのコンフィグファイルを作成
rollup.config.js
です。
これはお決まりなので、好きな名前では保存できません。
import vue from 'rollup-plugin-vue'
import nodeResolve from 'rollup-plugin-node-resolve'
export default {
input: 'main.js',
output: {
format: 'iife',
file: 'test-component.js'
},
plugins: [
nodeResolve(), // node_modules配下からvuejsを抽出
vue() // コンパイル
]
}
読み込み用のHTMLファイルの作成
適当にindex.html
とでも。
<!doctype html>
<html>
<head>
</head>
<body>
<div id="app">
<test-component></test-component>
</div>
<script src="./test-component.js"></script>
</body>
</html>
コンパイル
> yarn rollup -c
これで、test-component.js
ファイルが出来上がります。
index.htmlをブラウザで表示してみましょう!
赤色の「Hello world!」が表示されますね?
エラーで表示されない場合
ReferenceError: __vue_normalize__ is not defined
というエラーが、ブラウザのコンソールに出て「Hello world!」が表示されてないかもしれません。
rollup-plugin-vue(v5.1.2)では依存関係のエラーが起こっているようです。
参考
なので、v5.1.2ではなく、v5.1.0を使ってあげましょう。
> yarn add rollup-plugin-vue@5.1.0
↑を実行後、再度yarn rollup -c
を叩けば……問題ない!はず!!
参考
- RollupJSで、VueJSの単一ファイルコンポーネントを生成したい
- まじで助かりましたm(_ _)m
この記事を書いた人
Nな人(えぬなひと)。
Nは本名から取っています。
Laravelが大好きなPHPerで、WEBを作るときはLaravelを技術スタックに絶対推すマン。
PHP、Pythonと、昔はperlを書いていたP言語エンジニア。
最近はNimを書いたりしています。
Nは本名から取っています。
Laravelが大好きなPHPerで、WEBを作るときはLaravelを技術スタックに絶対推すマン。
PHP、Pythonと、昔はperlを書いていたP言語エンジニア。
最近はNimを書いたりしています。