zoukankan      html  css  js  c++  java
  • 尝试vue3.x 新特性

    一、初试化项目

    1、安装 vue-cli3

    npm install -g @vue/cli
    

    2、创建项目

    vue create my-project
    

    3、在项目中安装 composition-api,体验 vue3 新特性

    npm install @vue/composition-api --save
    

    4、在main.js引入,通过 Vue.use() 进行安装

    import Vue from 'vue'
    import VueCompositionApi from '@vue/composition-api'
    
    Vue.use(VueCompositionApi)
    
    二、setup(props, context){ }

    里边放data数据、生命周期、自定义函数
    props : 是参数一,接收 props 数据。
    context:是参数二,这个上下文对象中包含了一些有用的属性。些属性在 vue 2.x 中需要通过 this 才能访问到,在 vue 3.x 中,它们的访问方式如下:

    setup(props, context) {
        context.attrs
        context.slots
        context.parent
        context.root
        context.emit
        context.refs
      }
    
    

    另外一种简便写法 :将context解构,如下:

    //一般用这种,按需引入,节约内存
    setup(props,{attrs,slots,parent,root,emit,refs}){
    console.log(attrs,slots,....)
    }
    

    3.0和2.0对照:

    attrs --- this.$attrs
    emit  --- this.$emit
    listeners --- this.$listeners
    parent --- this.$parent
    refs --- this.$refs
    root --- this.$root
    
    
    
    三、reactive (用来声明对象、数组的数据类型)

    1、引入 reactive 函数:

    import { reactive } from '@vue/composition-api'
    

    2、reactive 里边声明数组/对象

    setup() {
         // 创建响应式数据对象
        const state = reactive({count: 0})
    
         // setup 函数中将响应式数据对象 return 出去,供 template 使用
        return state
    }
    
    四、ref(用来声明基础数据类型)

    ref用来声明基础数据

    model:'login' ; //vue 2.0写法
    
    //引入模块
    import { ref } from '@vue/composition-api';
    //声明数据
    const model = ref('login');//vue 3.0写法
    //取值方式
    console.log(model.value)  //'login'
    
  • 相关阅读:
    LeetCode
    <OFFER15> 15_NumberOf1InBinary
    《OFFER14》14_CuttingRope
    Convert DataFrame string complex i to j python // “Cloning” row or column vectors
    Sorting arrays in NumPy by column
    【説明する】深度优先及宽度优先算法比较
    codevs 2924 数独挑战 x(三种做法+超详细注释~)
    第四次考试大整理
    洛谷 P1048 采药
    codevs 3137-3139 栈练习 x
  • 原文地址:https://www.cnblogs.com/maizilili/p/12518149.html
Copyright © 2011-2022 走看看