vue3基础知识

这篇具有很好参考价值的文章主要介绍了vue3基础知识。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、vue基本用法

1.setup函数

在vue2中数据放在data中、方法放在method中等等。在vue3中统一放在了setup函数中。
代码如下:APP.vue
在setup中一定要有return函数,将 “所有数据(变量,函数等)” 返回在能在视图中返回

<template>
  <div>
      <h1>我的名字叫{{ name }}, 我今年{{ age }} 岁了</h1>
  </div>
</template>

<script>
export default {
   setup(){
      const name = "zhangsan"
      const age = 20

     return {name,age}
   }
}  
</script>

<style scoped>

</style>

2.ref和reactive函数

reative函数和ref的功能式一样的。主要是"响应式数据"函数。在vue3中不能像vue2中使用 “this.变量” 操作数据值。必须使用ref进行响应式数据
区别:
1.ref 既可以用简单数据类型(数字、字符串),又可以用于复杂数据类型(对象、数组)
2.reactive是用来将复杂式的数据类型(对象,数组)。不能用于简单数据类型
建议简单数据类型用ref 复杂数据类型用reactive

2.1 ref 实例
<template>
  <div>
      <h1>我的名字叫{{ name }}, 我今年{{ user_info.age }} 岁了</h1>
      <h1>我是一个{{ user_info.genter }}</h1>
      <button @click="btn">按钮</button>
  </div>
</template>

<script>
// 引用ref函数
import { ref,reactive } from 'vue'
export default {
   setup(){
       //处理简单数据
      const name = ref("zhangsan")
      //处理复杂数据
      const user_info = ref({
        age: 20,
        genter: "男孩"
      })
      const btn = () => {
        // 使用value修改变量的值
        name.value = "lisi"
        user_info.value.age = 30
        user_info.value.genter = "女孩"
      }

     return {name,user_info,btn}
   }
}  
</script>

<style scoped>

</style>
2.2 reacti实例
<template>
  <div>
      <h1>我的名字叫{{ name }}, 我今年{{ user_info.age }} 岁了</h1>
      <h1>我是一个{{ user_info.genter }}</h1>
      <button @click="btn">按钮</button>
  </div>
</template>

<script>
// 引用ref函数
import { ref,reactive } from 'vue'
export default {
   setup(){
      const name = ref("zhangsan")
      const user_info = reactive({
        age: 20,
        genter: "男孩"
      })
      const btn = () => {
        // 使用value修改变量的值
        name.value = "lisi"
        
        //如果使用reactive,不用使用value进行修改,直接对数据进行修改即可
        user_info.age = 30
        user_info.genter = "女孩"
      }

     return {name,user_info,btn}
   }
}  
</script>

<style scoped>

</style>

3.计算属性computed

场景:在购物车里增加或者减少商品,总价会跟着变。

代码如下:

<template>
  <div>
      加数:<input type="number" v-model="num.x">
      <br>
      加数:<input type="number" v-model="num.y">
      <br>
      <--!引入计算属性返回的值-->
      和:<input type="number" v-model="sum">
  </div>
</template>

<script>
 //引入计算属性
import { reactive,computed } from 'vue'
export default {
   setup(){
      const num = reactive({
        x: "",
        y: ""
      })
	  
      //使用计算属性进行运算
      const sum = computed(()=>{
        return num.x + num.y
      })
     return {num,sum}
   }
}  
</script>

<style scoped>

</style>

二、vuex组件传值

1.作用

1.专门为vue.js设计的状态管理库
2.采用集中式的方式存储需要的共享的状态
3.vuex的作用是进行状态管理,解决复杂的组件通信,数据共享问题

在创建项目的时候vuex已经安装,在src/store/index.js 就是vuex的文件

import { createStore } from 'vuex'

export default createStore({
  //数据仓库,所有的数据都定义在state当中
  state: {
  },
  //类似于组件中的计算属性,监视state中的数据,一旦数据发生变化就开始运行
  getters: {
  },
  //同步调用
  mutations: {
  },
  //异步调用
  actions: {
  },
  modules: {
  }
})

2.state的基本使用

import { createStore } from 'vuex'

export default createStore({
  state: {
    username: "zhangsan"
  }
})

2.1 template中直接调用

在App.vue组件的视图层直接调用,代码如下

<template>
  <div>
  	  <!-- 直接使用$store.state来调用vuex中的数据 -->
      hello: {{ $store.state.username }}
  </div>
</template>

2.2 script中调用
<script>
// 导入useStore函数
import { useStore } from 'vuex'
export default {
  setup(){
    //通过useStore返回值来调用state中的数值
    const store = useStore()
    console.log(store.state.username)

  }
}
</script>

3.getters的基本使用

在getters中定义函数文章来源地址https://www.toymoban.com/news/detail-454693.html

import { createStore } from 'vuex'

export default createStore({
  state: {
    //定义一个基本数据
    username: "zhangsan"
  },
  getters: {
    //对username数据进行二次处理,每一个处理函数都需要将state作为参数传递过来
    newusername(state){
      return state.username + "您好"
    }
  }
})

2.1.template中直接调用
<template>
  <div>
      hello: {{ $store.state.username }}
      <br>
      <!-- 依然式通过$store来调用 -->
      hello1: {{ $store.getters.newusername }}
  </div>
</template>
2.2 script中调用
<script>
// 导入useStore函数
import { useStore } from 'vuex'
export default {
  setup(){
    const store = useStore()
    console.log(store.getters.newusername)

  }
}
</script>

到了这里,关于vue3基础知识的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • vue3之setup的基本使用

    setup是一个全新的配置项,值是一个函数,既然是配置项,是否与data、methods是兄弟? 没错,确实是兄弟关系,只不过到了vue3,就不怎么使用data这些配置项,会使用setup,让我为大家简单的介绍一下setup吧! setup是 Composition API ,组件中所用到的数据方法等等均配置在 setup 中

    2024年02月22日
    浏览(32)
  • vue3 01-setup函数

    1.setup函数的作用: 一开始创建vue3页面的时候是这样的 给容器传参在页面中显示 数据给模板使用,以前是data选项中即可,现在在setup中直接定然后返回,模板中即可使用 3.通过打印方式发现setup函数比beforeCreate 执行更早;setup中没有this组件实例 4.通过点击事件控制台显示内容 5.通

    2024年02月11日
    浏览(28)
  • vue3中<script setup> 和 setup函数的区别

    script setup  是在单文件组件 (SFC) 中使用组合式 API 的编译时语法糖。当同时使用 SFC 与组合式 API 时该语法是默认推荐。相比于普通的  script  语法,它具有更多优势: 更少的样板内容,更简洁的代码。 能够使用纯 TypeScript 声明 props 和自定义事件。 更好的运行时性能 (其模板

    2024年02月04日
    浏览(32)
  • 深入理解 Vue3 中的 setup 函数

    💗💗💗欢迎来到我的博客,你将找到有关如何使用技术解决问题的文章,也会找到某个技术的学习路线。无论你是何种职业,我都希望我的博客对你有所帮助。最后不要忘记订阅我的博客以获取最新文章,也欢迎在文章下方留下你的评论和反馈。我期待着与你分享知识、互

    2024年02月19日
    浏览(29)
  • vue3 setup中函数表达式和函数声明

    随着 Vue 3 中 Composition API 的引入,现在可以通过函数表达式和函数声明这两种方式声明函数。 函数声明是在非函数式编程语言中声明函数的传统或正常方式。以 function 开头,后跟函数名称、一对括号,最后是一对括住函数体的花括号。 这是一个例子: 函数声明的一个

    2024年02月13日
    浏览(30)
  • Vue3通透教程【六】setup语法糖、computed函数、watch函数

    专栏介绍: 凉哥作为 Vue 的忠实 粉丝输出过大量的 Vue 文章,应粉丝要求开始更新 Vue3 的相关技术文章,Vue 框架目前的地位大家应该都晓得,所谓三大框架使用人数最多,公司选型最多的框架,凉哥之前在文章中也提到过就是 Vue 框架之所以火起来的原因,和 Vue 框架相比其

    2024年01月20日
    浏览(32)
  • vue3的setup函数中定义data数据,使用data数据

    vue3保留了vue2的语法,但是不能混着用,setup中定义原有vue2中data数据的方法有所改变 直接上代码 对比原有vue2代码 data() {             return {                 name: \\\"张三\\\",                 age:18             }     } 在setup函数中使用数据也无需 this.xxx, 而是用你定义的名字

    2024年02月12日
    浏览(29)
  • Vue3 项目中使用setup()函数报错,script setup cannot contain ES module exports

    当使用vue3+vite使用语法糖setup时,要注意写法. 第一种写法就是 script 标签里面配置 setup,另一种是:export default 类里配置 setup() 方法, 我们只需要使用一种方法即可,混用了就会报错了。 解决: 第一种 script setup import {ref} from \\\'vue\\\' import { Toast } from \\\'vant\\\'; import Index from \\\'../pag

    2023年04月08日
    浏览(40)
  • 《ElementUI 基础知识》png 图片扩展 icon用法

    UI 设计给的切图是 .png 格式。但想与 Element UI icon 用法类似,方案如下。 准备图片 新建文件,可使用 CSS 预处理语言 styl 或 scss 。 stylus 方式 文件 icon.styl scss 方式 文件 icon.scss 全局导入。在 Vue 框架中直接导入即可。

    2024年04月23日
    浏览(30)
  • 【vue3】组合式API之setup()介绍与reactive()函数的使用

    ==😉博主:初映CY的前说(前端领域) ,📒本文核心:setup()概念、 reactive()的使用 【前言】vue3作为vue2的升级版,有着很多的新特性,其中就包括了组合式API,也就是是 Composition API。学习组合式API有什么优点呢?之前的vue2中结构不是挺不错的吗?那么接下来的事件,我将带着你

    2023年04月09日
    浏览(32)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包