vue中的data,computed,methods,created,mounted用法及说明

 更新时间:2023年07月04日 08:51:23   作者:不染126  
这篇文章主要介绍了vue中的data,computed,methods,created,mounted用法及说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

vue中的data,computed,methods,created,mounted

介绍一下vue的基本结构中各分类的含义以及他们的执行顺序

含义及执行顺序

1.首先created是最先执行的,它是一个生命周期,也叫钩子函数,用于页面还没加载完毕时发送请求,初始化data里的值。

2.data一般用来存放vue中的变量,通过return将数据返回到created中

3.methods用来写相关模块的函数以及功能的实现,格式为async+方法名,通常通过发送请求请求到后台数据

4.computed是界于created和mounted之间发生的,此时正是页面进行渲染的时候

5.mounted是加载完dom操作后才会触发,它和created一样只会执行一次,此时页面已经渲染完成,通常用于存放需要渲染的内容

下面通过代码段来简单描述

export default{
    data(){
      datas:[],
//这里的data是一个空数组用来存放从后端获取到的数据
}
    methods:{
       async getDatas(){
        let res = await get("/index/carousel/findAll");//发送请求
        this.datas = res.data;//将请求到的数据返回到空数组里
}
}
    created(){
     this.getDatas()//生命周期 还没加载时发送请求
}
}

不一定要每个都用到,根据自身需求而应用

vue2页面和mixins中相同的data created mounted computed watch methods优先级

data

页面中定义的 data 会覆盖 mixins 中同名的 data

在这里插入图片描述

created、mounted

先执行 mixins 中生命周期函数,再执行页面中的生命周期函数。

在这里插入图片描述

watch

先执行 mixins 中的 watch 监听,再执行页面中同名的 watch 监听。

在这里插入图片描述

computed

页面中定义的 computed 属性会覆盖 mixins 中同名的 computed 属性

在这里插入图片描述

methods

页面中定义的 methods 覆盖mixins中同名的 methods

在这里插入图片描述

演示代码如下

页面 html 代码

<template>
  <div>
    <el-input v-model="value"></el-input>
    <el-button type="primary" @click="onSubmit">submit</el-button>
    <div>{{ text }}</div>
  </div>
</template>

页面 js 代码

export default {
  components: {
    DetailsTab,
    DataTab,
  },
  mixins: [testMixin],
  data() {
    return {
      pageData: 'this is page data',
      commonData: 'this is common data in page',
      value: '',
    }
  },
  watch:{
    value() {
      console.log('page watch value');
    },
  },
  computed: {
    text() {
      const text = `The input value is ${this.value}, this text is from page computed`;
      console.log(text);
      return text;
    },
  },
  created() {
    console.log('page created');
  },
  mounted() {
    console.log('page mounted');
    console.log(this.pageData);
    console.log(this.commonData);
    console.log(this.mixinsData);
  },
  methods: {
    onSubmit() {
      console.log('page methods');
    },
  },
}

mixins 代码

export default {
  data() {
    return {
      mixinsData: 'this is mixins data',
      commonData: 'this is common data in mixins',
    }
  },
  watch:{
    value() {
      console.log('mixins watch value');
    },
  },
  computed: {
    text() {
      const text = `The input value is ${this.value}, this text is from mixins computed`;
      console.log(text);
      return text;
    },
  },
  created() {
    console.log('mixins created');
  },
  mounted() {
    console.log('mixins mounted');
  },
  methods: {
    onSubmit() {
      console.log('mixins methods');
    },
  },
}

在这里插入图片描述

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 详解使用vue-cli脚手架初始化Vue项目下的项目结构

    详解使用vue-cli脚手架初始化Vue项目下的项目结构

    这篇文章主要介绍了详解使用vue-cli脚手架初始化Vue项目下的项目结构,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-03-03
  • vue使用html2PDF实现将内容导出为PDF

    vue使用html2PDF实现将内容导出为PDF

    将 HTML 转换为 PDF 进行下载是一个比较常见的功能,这篇文章将通过html2PDF实现将页面内容导出为PDF,感兴趣的小伙伴可以跟随小编一起学习一下
    2023-11-11
  • 一文带你搞懂Vue3 defineModel中的双向绑定

    一文带你搞懂Vue3 defineModel中的双向绑定

    随着vue3.4版本的发布,defineModel也正式转正了,它可以简化父子组件之间的双向绑定,是目前官方推荐的双向绑定实现方式,下面就跟随小编一起深入了解一下defineModel的使用吧
    2024-02-02
  • 使用VUE实现一键复制内容功能

    使用VUE实现一键复制内容功能

    这篇文章主要介绍了使用VUE实现一键复制内容功能,功能就是当我们点击复制按钮时,会提示“复制成功”,这样复制的内容就可以在其他地方使用了,感兴趣的朋友可以学习一下
    2023-04-04
  • 关于vue中如何监听数组变化

    关于vue中如何监听数组变化

    这篇文章主要介绍了关于vue中如何监听数组变化,对vue感兴趣的同学,必须得参考下
    2021-04-04
  • vue实现全局组件自动注册,无需再单独引用

    vue实现全局组件自动注册,无需再单独引用

    这篇文章主要介绍了vue实现全局组件自动注册,无需再单独引用方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-03-03
  • vue3封装自己的分页组件

    vue3封装自己的分页组件

    这篇文章主要为大家详细介绍了vue3封装自己的分页组件,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-09-09
  • 3分钟带你快速认识Vue3中的v-model

    3分钟带你快速认识Vue3中的v-model

    model在vue里面实现双向绑定,通过父节点向子节点传递参数,子节点通过操作再回传给父节点的变量,有点像prop和$emit组合使用,下面这篇文章主要给大家介绍了关于Vue3中v-model的相关资料,需要的朋友可以参考下
    2022-11-11
  • Vue项目配置、切换主题颜色详细教程(mixin+scss方式,简单高效)

    Vue项目配置、切换主题颜色详细教程(mixin+scss方式,简单高效)

    这篇文章主要给大家介绍了关于Vue项目配置、切换主题颜色(mixin+scss方式)的相关资料,根据预设的配色方案,在前端实现动态切换系统主题颜色,文中通过代码示例介绍的非常详细,需要的朋友可以参考下
    2023-11-11
  • vue中计算属性computed和普通属性method的区别小结

    vue中计算属性computed和普通属性method的区别小结

    Vue.js中Computed和Methods是两种常用的数据处理方式,本文主要介绍了vue中计算属性computed和普通属性method的区别小结,具有一定的参考价值,感兴趣的可以了解一下
    2024-06-06

最新评论