框架简介之Vue.js

简介: vue官网说:Vue.js 是一套构建用户界面的渐进式框架。与其他重量级框架不同的是,Vue 采用自底向上增量开发的设计。渐进式,我个人理解就是阶梯式向前。vue是轻量级的,它有很多独立的功能或库,我们会根据我们的项目来选用vue的一些功能。就像我们开发项目时如果只用到vue的声明式渲染,我就只用vue的声明渲染,而我们要用他的组件系统,我们可以引用它的组件系统。

前端框架有哪些?

React(GitHub No.1)

React起源于Facebook的内部消息。React官方是这样介绍的它:一个声明式、高效、灵活的、创建用户界面的JavaScript库,即使React的主要作用是构建UI,但是项目的逐渐成长已经使得react成为前后端通吃的WebApp解决方案。

Vue(GitHub No.2)

vue官网说:Vue.js 是一套构建用户界面的渐进式框架。与其他重量级框架不同的是,Vue 采用自底向上增量开发的设计。
渐进式,我个人理解就是阶梯式向前。vue是轻量级的,它有很多独立的功能或库,我们会根据我们的项目来选用vue的一些功能。就像我们开发项目时如果只用到vue的声明式渲染,我就只用vue的声明渲染,而我们要用他的组件系统,我们可以引用它的组件系统。
vue的渐进式表现为:

声明式渲染——组件系统——客户端路由——-大数据状态管理——-构建工具

Augular(GitHub No.3)

AngularJS 是一款开源JavaScript库,由Google维护,用来协助单一页面应用程序运行,它是基于ES6来开发的。

它是前端/客户端JavaScript框架,由Google创建和维护,用于构建功能强大的单页应用程序,通过表达式绑定数据到 HTML。

Vue.js

Vue的核心点

1.响应式数据绑定

当数据发生变化时,Vue自动更新视图。

原理是利用了 Object.definedProperty中的setter/getter代理数据,监控对数据的操作。


<template>
  <div id="app">
    {{ message }}
  </div>
</template>
 
<script>
export default {
  name: 'app',
  data () {
    return {
      message: 'Welcome to Your Vue.js App'
    }
  }
}
</script>
 
<style>
</style>

2.可组合的视图组件

一个页面被映射成组件树,将组件进行划分,方便维护,复用,测试,也就是说一个页面是由多个组件组合而成。

img

img

3.虚拟Dom

虚拟Dom是随着时代发展而诞生的产物。

在Web早期,页面的交互都十分简单,没有复杂的状态需要管理,也不需要频繁操作Dom,使用JQ来开发就能满足我们的需求。

随着时代不断发展,功能越来越多,我们需要实现的需求就越来越复杂,程序中需要维护的状态也就越来越多,导致Dom操作越来越频繁。

那么,我们再像以前那样,使用JQ来发开页面的时候,就会有一大部分代码是在操作Dom,程序中的状态也很难管理,代码的逻辑就会十分混乱。

这其实是命令式操作Dom的问题,虽然简单,但是不好维护。

现在,主流的前端的框架,都是声明式操作Dom。我们通过描述状态和Dom之间的映射关系是怎样的,就可以将状态渲染成视图,至于怎么渲染的,框架会帮我们去做,不用我们手动去操作Dom。

运行的JavaScript代码速度是很快的,但是有大量的操作DOM就会很慢,时常在更新数据后会重新渲染页面,这样造成在没有改变数据的地方也重新渲染了DOM节点,这样就造成了很大程度上的资源浪费。

利用在内存中生成与真实DOM与之对应的数据结构,这个在内存中生成的结构称之为虚拟DOM

当数据发生变化时,能够智能地计算出重新渲染组件的最小代价并应用到DOM操作上

img

img

4.MVVM

MVVM概述:M:Model数据模型 , V:view 视图模板 , VM:view-Model:视图模型

img

Vue中的MVVM实例(双向数据绑定):当输入框输入数据的时候,相应的message也会改变

<template>
  <div id="app">
    <input type="text" v-model="message"/>
    {{ message }}
  </div>
</template>
 
<script>
  export default {
    name: 'app',
    data () {
      return {
        message: 'Welcome'
      }
    }
  }
</script>
 
<style>
</style>

5.声明式渲染

Vue.js 的核心是一个允许采用简洁的模板语法来声明式的将数据渲染进 DOM,初始化根实例,vue自动将数据绑定在DOM模板上

声明式渲染与命令式渲染区别

声明式渲染:所谓声明式渲染只需要声明在哪里,做什么,而无需关心如何实现

命令式渲染:需要具体代码表达在哪里,做什么,如何实践
需求:求数组中每一项的倍数,放在另一个数组中

命令式渲染:

var arr = [1, 2, 3, 4, 5]
  var newArr = []
  for (var i = 0; i < arr.length; i++) {
    newArr.push(arr[i] * 2)
  }
  console.log(newArr)

声明式渲染:

var arr = [1, 2, 3, 4, 5]
  var newArr = arr.map(function (item) {
    return item * 2
  })
  console.log(newArr)
相关文章
|
1月前
|
Web App开发 JavaScript 前端开发
构建高效后端服务:Node.js与Express框架的实战指南
【9月更文挑战第6天】在数字化时代的潮流中,后端开发作为支撑现代Web和移动应用的核心,其重要性不言而喻。本文将深入浅出地介绍如何使用Node.js及其流行的框架Express来搭建一个高效、可扩展的后端服务。通过具体的代码示例和实践技巧,我们将探索如何利用这两个强大的工具提升开发效率和应用性能。无论你是后端开发的新手还是希望提高现有项目质量的老手,这篇文章都将为你提供有价值的见解和指导。
|
2月前
|
JavaScript 前端开发 中间件
构建高效后端服务:Node.js与Express框架的完美搭档
【8月更文挑战第28天】在追求高性能、可扩展和易维护的后端开发领域,Node.js和Express框架的组合提供了一种轻量级且灵活的解决方案。本文将深入探讨如何利用这一组合打造高效的后端服务,并通过实际代码示例展示其实现过程。
|
2月前
|
JavaScript 前端开发 开发者
Vue.js 框架大揭秘:响应式系统、组件化与路由管理,震撼你的前端世界!
【8月更文挑战第27天】Vue.js是一款备受欢迎的前端JavaScript框架,以简洁、灵活和高效著称。本文将从三个方面深入探讨Vue.js:响应式系统、组件化及路由管理。响应式系统为Vue.js的核心特性,能自动追踪数据变动并更新视图。例如,通过简单示例代码展示其响应式特性:`{{ message }}`,当`message`值改变,页面随之自动更新。此外,Vue.js支持组件化设计,允许将复杂界面拆分为独立且可复用的组件,提高代码可维护性和扩展性。如创建一个包含标题与内容的简单组件,并在其他页面中重复利用。
60 3
|
2月前
|
存储 JavaScript NoSQL
构建高效Web应用:使用Node.js和Express框架
【8月更文挑战第30天】本文将引导你了解如何使用Node.js和Express框架快速搭建一个高效的Web应用。通过实际的代码示例,我们将展示如何创建一个简单的API服务,并讨论如何利用中间件来增强应用功能。无论你是新手还是有经验的开发者,这篇文章都将为你提供有价值的见解。
|
2天前
|
Web App开发 JavaScript 前端开发
使用Node.js和Express框架构建Web服务器
使用Node.js和Express框架构建Web服务器
|
3天前
|
Web App开发 JavaScript API
构建高效后端系统:Node.js与Express框架的实践之路
【9月更文挑战第37天】在数字化时代的浪潮中,后端开发作为技术架构的核心,承载着数据处理和业务逻辑的重要职责。本文将深入探讨如何利用Node.js及其强大的Express框架来搭建一个高效、可扩展的后端系统。我们将从基础概念讲起,逐步引导读者理解并实践如何设计、开发和维护一个高性能的后端服务。通过实际代码示例和清晰的步骤说明,本文旨在为初学者和有经验的开发者提供一个全面的指南,帮助他们在后端开发的旅途上走得更远。
17 3
|
11天前
|
JavaScript 前端开发
JavaScript简介
JavaScript简介
|
12天前
|
Web App开发 JavaScript 前端开发
构建高效Web应用:Node.js与Express框架的深度整合
【9月更文挑战第28天】在现代Web开发领域,Node.js和Express框架的结合已成为打造高性能、易扩展应用的黄金组合。本文将深入探讨如何利用这一技术栈优化Web应用架构,提供具体实践指导,并分析其性能提升的内在机制。通过代码示例,我们将展示从基础搭建到高级功能的实现过程,旨在为开发者提供一条清晰的学习路径,以实现技术升级和项目效率的双重提升。
26 3
|
14天前
|
前端开发 JavaScript API
React、Vue.js 和 Angular前端三大框架对比与选择
前端框架是用于构建用户界面的工具和库,它提供组件化结构、数据绑定、路由管理和状态管理等功能,帮助开发者高效地创建和维护 web 应用的前端部分。常见的前端框架如 React、Vue.js 和 Angular,能够提高开发效率并促进团队协作。
29 4
|
16天前
|
JavaScript 前端开发
常用的 JavaScript 框架和库
常用的 JavaScript 框架和库
23 6