【vue2】基础概念 01 (vue框架介绍、el、data、插值表达式)

简介: vue框架介绍、结构元素详解(el、data、插值表达式)

一、vue概念

    vue官方描述为是一款用于构建用户界面的 JavaScript 框架。它基于标准 HTML、CSS 和 JavaScript 构建,并提供了一套声明式的、组件化的编程模型,帮助你高效地开发用户界面。无论是简单还是复杂的界面,Vue 都可以胜任。

1.对比组件库

       对比我们之间学的组件库来说(拿moment、axios举例),库,本质上是一些函数的集合。每次调用函数,实现一个特定的功能工具箱。需要自己控制代码的执行逻辑

       而我们框架相当于是直接用别人写好的骨架来进行开发的,这样限制多但是框架的功能也很强大,可以极大地提高开发的效率(常见框架:vue、react、angular、bootstrap)

2.vue框架特性

vue是 MVVM 的框架,各代表着:

  • M:model数据模型(ajax获取到的数据)
  • V:view视图(页面)
  • VM:ViewModel 视图模型

实现的机制如下:

89533e10c2204b60b34804fb6fe49455.png

一句话来总结就是说:

vue使用的这个框架是同通过数据来驱动视图的,我们修改了数据会通过MVVM的特殊机制来达到实时修改,实时渲染到页面上的效果

3.开发vue的方式

  • 传统开发模式:基于html/css/js文件开发vue
  • 工程化开发方式:在webpack环境中开发vue,这是最推荐的方式。
  • 现代化的项目也都是在webpack环境下进行开发的。

    (本文是初体验vue框架的开发模式,因此还是先遵守传统开发模式的方式进行演示讲解,等基础扎实了我们就开始转换现代化的方式进行开发喽)

二、传统开发vue初体验

1.永远不变的三大步(先体验结构,下文会解释代码细节)

①在html中导入我们准备好的vue.js文件

<!-- 1.导入vue -->
<script src="./vue.js"></script>

②写入HTML模板

<!-- 2.写HTML模板 -->
  <div id="app">
    {{message}}
  </div>
    <div id="app">
      {{message}}
  </div>

③创建实例对象

<script>
    // 3.创建实例对象
    const app = new Vue({
      el: '#app',
      data: {
        message: 'hello vue'
      }
    })
  </script>

上述是不变的结构,下面的话我们来学习为什么需要这样写

2.上述知识详解

1.挂载点el

挂载点通俗的来说就是确定vue它渲染的范围是哪一块区域。

我们通过挂载点el:"标签"来确定它渲染的范围。比如下面这个例子,我们就是通过 el="#app"从而找到了渲染的地方是在那个div盒子里面。

49f0237dc8f941d59b4565f40c860c9f.png

注意点:当有多个平级的el挂载点的时候仅仅只是会渲染第一个遇见的挂载点找到的标签。

例如:下面这个虽然有两个"#app"但是仅仅只是找到了第一个挂载点渲染,第二个未渲染。

7beaf5db498b4f40983d78c49fbf0784.png

2.插值表达式

写法:{{写data中的数据 }}

作用: 使用 data 中的数据渲染视图(模板)

注意事项:①可解析对象、数组、变量, 同时支持三元运算符

                 ②不能使用if或者for,也不能在标签属性中使用

比如可支持:

{{ msg }}
{{ obj.name }}
{{ msg.toUpperCase() }}
{{ obj.age > 18 ? '成年' : '未成年' }}

3.存数据data

作用:里面存放我们vue框架所需要用到的数据。(切记:vue框架是以数据作为驱动的)

语法:data:{},data是对象。

注意点:vue框架处理数据会进行平铺的,即我们处理data中数据的时候可以省略用data.xxx的形式来读入data中我们存在的数据。

举个例子

3c09c052ba674deb8cea87cac87891da.png

看到这里了,我再来解释下上述vue框架传值并渲染的一个流程:

我们先通过我们引入的vue.js文件new实例化一个vue的对象出来,之后我们通过挂载点找到我们需要渲染的位置在哪里,之后找到里面的插值{{}}解析里面存放在data中的数据,解析完毕后vue框架会实时的将我们的内容自动的渲染出来,不再需要dom的操作。

本文的总览:

7f5f541362c649f39a9b4cdaf4b27e7b.png


相关文章
|
8月前
|
JavaScript 前端开发 算法
Vue 3 和 Vue 2 的区别及优点
Vue 3 和 Vue 2 的区别及优点
|
7月前
|
JavaScript 前端开发 API
Vue 2 与 Vue 3 的区别:深度对比与迁移指南
Vue.js 是一个用于构建用户界面的渐进式 JavaScript 框架,在过去的几年里,Vue 2 一直是前端开发中的重要工具。而 Vue 3 作为其升级版本,带来了许多显著的改进和新特性。在本文中,我们将深入比较 Vue 2 和 Vue 3 的主要区别,帮助开发者更好地理解这两个版本之间的变化,并提供迁移建议。 1. Vue 3 的新特性概述 Vue 3 引入了许多新特性,使得开发体验更加流畅、灵活。以下是 Vue 3 的一些关键改进: 1.1 Composition API Composition API 是 Vue 3 的核心新特性之一。它改变了 Vue 组件的代码结构,使得逻辑组
1760 0
|
9月前
|
JavaScript 前端开发 UED
vue2和vue3的响应式原理有何不同?
大家好,我是V哥。本文详细对比了Vue 2与Vue 3的响应式原理:Vue 2基于`Object.defineProperty()`,适合小型项目但存在性能瓶颈;Vue 3采用`Proxy`,大幅优化初始化、更新性能及内存占用,更高效稳定。此外,我建议前端开发者关注鸿蒙趋势,2025年将是国产化替代关键期,推荐《鸿蒙 HarmonyOS 开发之路》卷1助你入行。老项目用Vue 2?不妨升级到Vue 3,提升用户体验!关注V哥爱编程,全栈开发轻松上手。
591 2
|
JavaScript 前端开发 API
Vue 3 中 v-model 与 Vue 2 中 v-model 的区别是什么?
总的来说,Vue 3 中的 `v-model` 在灵活性、与组合式 API 的结合、对自定义组件的支持等方面都有了明显的提升和改进,使其更适应现代前端开发的需求和趋势。但需要注意的是,在迁移过程中可能需要对一些代码进行调整和适配。
681 158
|
9月前
|
JavaScript 前端开发 API
管理数据必备;侦听器watch用法详解,vue2与vue3中watch的变化与差异
一篇文章同时搞定Vue2和Vue3的侦听器,是不是很棒?不要忘了Vue3中多了一个可选项watchEffect噢。 博客不应该只有代码和解决方案,重点应该在于给出解决方案的同时分享思维模式,只有思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
|
JavaScript 前端开发 API
从Vue 2到Vue 3的演进
从Vue 2到Vue 3的演进
235 17
|
JavaScript 前端开发 API
Vue.js响应式原理深度解析:从Vue 2到Vue 3的演进
Vue.js响应式原理深度解析:从Vue 2到Vue 3的演进
328 17
|
JavaScript 测试技术 容器
Vue2+VueRouter2+webpack 构建项目
1). 安装Node环境和npm包管理工具 检测版本 node -v npm -v 图1.png 2). 安装vue-cli(vue脚手架) npm install -g vue-cli --registry=https://registry.
1233 0
|
3月前
|
JavaScript
Vue中如何实现兄弟组件之间的通信
在Vue中,兄弟组件可通过父组件中转、事件总线、Vuex/Pinia或provide/inject实现通信。小型项目推荐父组件中转或事件总线,大型项目建议使用Pinia等状态管理工具,确保数据流清晰可控,避免内存泄漏。
311 2
|
2月前
|
缓存 JavaScript
vue中的keep-alive问题(2)
vue中的keep-alive问题(2)
291 137