vue2 ♺ vue3


vue 2とvue 3の違い
vue 2とvue 3の一部のみを整理しておりますので、詳細は公式ドキュメントをご覧ください
https://v3.vuejs.org/guide/introduction.html
App.vue$ vue create vue-project
//vue2
export default Vue.extend({
  name:"App",
  components: {
    HelloWorld,
  },
  data(){
    return {
      str: "hi",
    };
  }
})

//vue3
export default defindComponent({
  name:"App",
  components: {
    HelloWorld,
  },
  data(){
    return {
      str: "hi",
    };
  }
})
最も区別しやすい違いはアプリケーションです.vueで使用されるapi構文はVueです.extendからdefind componentに変更することがわかります.
このほか、ビュー内部で使用されるコードのタイプも様々です.タイプスクリプトのサポートが強化されていると言えます.
mixin(データ、メソッド)の代替品setup()
hocを使用して重複コードを回収できるmixinには多くの問題がある.
mixinとhocの問題リンク
vue 3でサポートされているsetup()では、refを使用してデータにアクセスし、値を簡単に変更できます.
//vue2
export default defineComponent({
  data(){
    return {
      str: "",
    };
  },
  methods:{
    changeString(){
      this.str = "hi";
    },
  },
});
//vue3
export default defineComponent({
	setup(){
      const str = ref("");
      str.value = "hi";
      return {str}
    },
});
첫번째 코드および두번째 코드は、코드량を確実に減少させ、가독성は改善された.
vue 2もさらに強化されますか?
エヴァンユーの文書によると...

  • vue 3とvue 2の最大の違いは@vue/composition-apipluginであり,本来はvue 2からサポートされており,vue 2も3と完全に同じであると考えられる.

  • vue 2は<script setup>構文もサポートしています.

  • タイプスクリプトのタイプはimpoveです.
  • Vite나 여러가지 새로운 문법は引き続きサポートされます.
  • vue 3はIE 11をサポートしません.
    n/a.結論
    現在vue 3生態系はまだ完成しておらず、vue 2も引き続き提供されるので、しばらくvue 2とvue 3の間で考慮すべきである.
    reference
    https://github.com/vuejs/vue
    https://v3.vuejs.org/guide/introduction.html