美文网首页
vue3.0组件数据定义

vue3.0组件数据定义

作者: 哥是八路 | 来源:发表于2021-04-21 23:36 被阅读0次

    1. 定义

    维护单一功能,可复用的单个个体。

    2. 结构

    <template></template>
    <script></script>
    <style></style scoped lang='scss'>
    

    其中scoped,只在当前组件生效。

    3. 定义组件

    //从vue中导入定义组件的方法,就是defineComponent
    import { defineComponent,reactive } from 'vue'
    //ES6导出模块,defineComponent方法,内部是一个对象。
    export default defineComponent({
      name:"Home",//定义组件的名称
      //接收父组件的数据
      props:{
      },
      //定义子组件
      component:{
      },
      //setup函数,
      setup(props,ctx) {
        return {
        }
    })
    

    4. 定义单个数据ref

    (1)引入

    import { defineComponent,reactive,ref } from 'vue'
    

    (2) 定义数据并初始化

      setup(props,ctx) {
      let num = ref(10);
      let name = ref('wuning');  
      return {
        }
    

    (3) 暴漏出去

      setup(props,ctx) {
      let num = ref(10);
      let name = ref('wuning');  
      let arr = ref([1,2,3])//定义数组,并初始化
      let obj = ref({
        age:20,
      })//定义对象
      return {
        num,//es6简写方式
        name,
        arr,
        obj
      }
    

    (4)使用方法---插值表达式

    <div>
      {{name}}
      {{num}}
    </div>
    

    5. 定义方法

    vue3中已经没有method对象了。使用声明式定义一个函数。ES6中的知识。
    (1) 定义

    setup(props,ctx) {
      //定义数据,并初始化
      let num = ref(10)
      let data = reactive({name:"wuning"})
      //定义方法
      let add=()=>{
        //访问ref定义的数据,需用num.value的形式拿到。
        //访问reactive定义的数据使用,data.name
      }
      //暴漏出去
      return {
        ...toRef(data),
        num,
        add
      }
    }
    

    数据和方法都是在setup中定义的,然后通过export导出模块。
    (2)方法之间的调用
    方法之间的调用,必须先定义在被调用,被掉用的函数要在调用的函数之前。

    相关文章

      网友评论

          本文标题:vue3.0组件数据定义

          本文链接:https://www.haomeiwen.com/subject/frptrltx.html