Vue获取初始化数据是放在created还是mounted解读

接下来我会详细讲解“Vue获取初始化数据是放在created还是mounted解读”的攻略。

构建Vue实例

首先,在构建Vue实例之前,我们需要先导入Vue.js。

<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>

然后,我们需要在HTML中指定一个挂载点(mount point),这个挂载点是Vue实例所要依附的真实DOM元素。

<div id="app">
  <!-- Vue实例将会依附于这里 -->
</div>

接着,在JavaScript中,我们创建一个Vue实例并将其依附到挂载点中。

const app = new Vue({
  el: '#app',
});

created和mounted生命周期函数

在Vue实例被创建后,其会自动执行一些生命周期的函数,其中常用到的就是created和mounted。created在实例创建完毕后立即执行,而mounted在Vue实例挂载到挂载点之后执行。这两个函数的区别在于:

  • 在created中,Vue实例被创建,但是它的模板还没有被渲染成最终的DOM
  • 在mounted中,Vue实例已经和真实DOM元素进行了绑定,并且模板已经填充到了最终的DOM中

所以,在created中,我们无法访问到真实DOM元素,但是可以访问Vue实例中所有的响应式数据和方法。而在mounted中,可以访问到真实DOM元素,并且做一些和DOM有关的操作。

放置初始化数据

放置初始化数据的时间应该放在created或mounted中取决于我们初始化数据是不是需要获取DOM元素的。

如果数据不需要获取DOM元素,那么我们可以将其放置在created中。

const app = new Vue({
  el: '#app',
  data: {
    message: 'Hello Vue!',
  },
  created() {
    // 不需要获取DOM元素的数据初始化
    console.log(this.message);
  },
});

如果数据需要获取DOM元素,那么我们需要将其放置在mounted中。

const app = new Vue({
  el: '#app',
  data: {
    message: '',
  },
  mounted() {
    // 需要获取DOM元素的数据初始化
    this.message = document.getElementById('message').innerHTML;
    console.log(this.message);
  },
});

示例说明

示例1:在created中放置初始化数据

<div id="app">
  {{ message }}
</div>

<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<script>
  const app = new Vue({
    el: '#app',
    data: {
      message: 'Hello World!',
    },
    created() {
      console.log(this.message);
    },
  });
</script>

在这个示例中,我们在created中放置了初始化数据,这里的数据不需要获取DOM元素。当Vue实例创建完成后,我们打印出了初始化的数据“Hello World!”到控制台中。

示例2:在mounted中放置初始化数据

<div id="app">
  <p id="message">Hello World!</p>
  {{ message }}
</div>

<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<script>
  const app = new Vue({
    el: '#app',
    data: {
      message: '',
    },
    mounted() {
      this.message = document.getElementById('message').innerHTML;
      console.log(this.message);
    },
  });
</script>

在这个示例中,我们在mounted中放置了初始化数据,这里的数据需要获取DOM元素。我们将DOM元素中的内容“Hello World!”赋值给了Vue实例中的数据message。当Vue实例挂载完毕后,我们打印出了初始化的数据“Hello World!”到控制台中。

总结

在Vue中,我们可以将初始化数据放置在created或mounted中,取决于这些数据是否需要获取DOM元素。对于数据不需要获取DOM元素的情况,我们可以将其放置在created中;对于数据需要获取DOM元素的情况,我们需要将其放置在mounted中。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Vue获取初始化数据是放在created还是mounted解读 - Python技术站

(0)
上一篇 2023年5月28日
下一篇 2023年5月28日

相关文章

  • 简单实现Vue的observer和watcher

    首先,要实现Vue的Observer和Watcher,需要进行以下步骤: Observer: Vue中的Observer实现了数据响应式,它可以监听数据的变化并自动更新相应的视图。实现Observer需要使用ES6的Proxy对象来劫持对象或数组的访问。代码示例: function observe(obj) { if(!obj || typeof obj !…

    Vue 2023年5月28日
    00
  • vue中定义的data为什么是函数

    在Vue中定义data时,我们常常将其设置为一个函数。其原因是为了确保每个实例都拥有自己的data数据,而不是共享一个data对象。 具体来说,当我们使用对象来定义data时: data: { msg: ‘Hello World!’ } 我们可以通过以下代码来创建Vue实例: new Vue({ data: { msg: ‘Hello from instan…

    Vue 2023年5月28日
    00
  • 在Vue中使用WebScoket 会怎么样?

    在Vue中使用WebSocket可以实现双向通信,实时更新数据,并且极大地提升了用户体验。下面是使用WebSocket的完整攻略: 1. 安装WebSocket库 Vue项目中可以使用vue-native-websocket等WebSocket库。安装方法如下: npm install vue-native-websocket 2. 引入WebSocket库…

    Vue 2023年5月28日
    00
  • Vue六大基本类型中的原始值响应式

    Vue六大基本类型中的原始值响应式是指 Vue 对于 JavaScript 基本数据类型的响应式实现,包括 Number、String、Boolean 和 Symbol 四个类型的数据。 Vue 对于这些数据类型的响应式实现是通过 Object.defineProperty() 方法来实现的。当 Vue 检测到数据发生变化时,会调用数据的 setter 方法…

    Vue 2023年5月28日
    00
  • vue组件生命周期钩子使用示例详解

    Vue组件生命周期钩子使用示例详解 在Vue组件的生命周期中,每个实例会从创建、挂载、更新、销毁四个不同的阶段。在这些不同的阶段中,我们可以通过使用生命周期钩子函数来控制组件的行为。本文将详细讲解Vue组件生命周期钩子函数的使用方法,并通过示例代码介绍其具体应用。 Vue组件生命周期钩子函数 Vue组件生命周期可以分为8个阶段,每个阶段都有对应的生命周期钩子…

    Vue 2023年5月27日
    00
  • Vue 3.0 前瞻Vue Function API新特性体验

    以下是关于“Vue 3.0 前瞻Vue Function API新特性体验”的详细攻略。 什么是Vue Function API? Vue Function API是指在Vue.js 3.0中引入的一组全新的API,它们的设计目标是更好地解决组件库编写过程中出现的一些问题,如代码的可维护性、组件之间的通信以及更好的类型支持等。Vue Function API…

    Vue 2023年5月28日
    00
  • 解决vue项目 build之后资源文件找不到的问题

    解决vue项目 build之后资源文件找不到的问题 在使用Vue CLI构建的项目中,我们通常会通过npm run build命令将项目打包成生产环境所需的静态资源,这些资源最终都会被打包到dist目录下。但是,在项目实际运行中,有时候可能会出现资源文件找不到的问题,导致页面异常或者空白。本篇攻略将详细讲解这个问题的解决方法。 问题分析 我们先来解析一下这个…

    Vue 2023年5月28日
    00
  • 通过实例解析vuejs如何实现调试代码

    Vue.js作为前端框架,在开发过程中难免会出现各种问题,此时调试就变得非常必要。本文将通过实例解析Vue.js如何实现调试代码的完整攻略。 开启DevTools 在浏览器中打开Vue.js应用程序,按下F12或者Ctrl+Shift+I可以打开浏览器的开发者工具。然后切换到“Console”面板,就可以在其中输入Vue.js的代码并进行调试了。 Vue D…

    Vue 2023年5月27日
    00
合作推广
合作推广
分享本页
返回顶部