VueをTypescriptで実装しようとしたら、方法がさまざまあって手こずる。Vue2を使用していますがVue3に向けてどれで慣れておいたらいいのかも迷う。
上のような表示をするだけのヤツを実装方法を変えて3つ。
- vue-class-component
- vue-property-decorator
- Vue.extend
どれもWebpackを使ってバンドルしています。あとデバッグ用なので特に必要はないですがwindow.appというグローバル変数を作成(global.d.ts)して、ViewModelをグローバルへ露出させています。
一つ目は「vue-class-component」
以下はソースの一部です、デコレータ部分がおっきくなりますね。あとpropへの参照が「$prop」とかエディタのサジェスト機能で初めて知りました。
import Vue from 'vue'; import Component from "vue-class-component"; @Component({ template:'<li v-on:click="onClick">{{name}}</li>', props:{ name:String } }) class MyData extends Vue{ onClick = ():void =>{ console.log(this.$props.name); } }続きを読む “Vue + Typescriptのお勉強”