vue2与vue3区别

这篇博客详细介绍了Vue2和Vue3在引入方式和渲染函数上的区别,并通过示例展示了Vue3中`setup`函数的使用。在Vue3中,`setup`函数允许开发者访问到响应式数据和方法,但需要注意Vue2与Vue3之间的方法调用不兼容问题。文章探讨了Vue3的特性,包括组合API,以及在组件间交互的挑战。
摘要由CSDN通过智能技术生成

1.工程结构
vue2

// vue2引入的是一个构造函数, vue3引入的是一个createApp工厂函数
import { createApp } from 'vue'
import App from './App.vue'
createApp(App).mount('#app')

vue3

import Vue from 'vue'
import App from './App.vue'
new Vue({
  render: h => h(App)
}).$mount('#app')
  1. setup()
<template>
  <h1>setup</h1>
  <hr>
  <div>{{name}}</div>
  <div>{{age}}</div>
  <div>{{six}}</div>
  <button @click="sayHello">vue3--sayHello</button> <br>
  <button @click="sayHai">vue2--sayHai</button> <br>
  <!-- vue2可以调vue3的方法 -->
  <button @click="diaoSayHello">vue2调vue3</button> <br>
  <!-- vue3调不了vue2的方法 vue3和vue2不建议一起使用-->
  <button @click="diaoSayHai">vue3调vue2</button>
</template>

<script>
export default {
  name: 'Vue3Study01Setup',

  data() {
    return {
      six: '男',
    }
  },
  methods:{
    sayHai(){
      alert('hai!')//能调
    },
    diaoSayHello(){
      this.sayHello() //能调
    }
  },

  setup(){
    let name = 'lin';
    let age = 18
    function sayHello(){
      alert('hello!')//能调
    }
    function diaoSayHai(){
      console.log(this.sayHai());//报错
    }
    return {
      name,age,sayHello,diaoSayHai
    }
  }
};
</script>

<style lang="scss" scoped>

</style>
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值