美文网首页
数据驱动以及vue功能原生js实现

数据驱动以及vue功能原生js实现

作者: 拐服第一大码猴 | 来源:发表于2021-01-14 20:00 被阅读0次

数据驱动通用思想:

把界面要变化的部分,抽取到动态数据中,通过数据变化,自动更新视图

1. 书写静态组件

react: 新建.js文件, 书写class,render

vue: 新建.vue文件, 书写template

2. 把要变化的值,抽取到状态中(动态数据)

react: state = { a: xxx, b : xxx }

vue: data(){

return {

a: xxx,

b: xxx

}

}

3. 在适当时机,改变状态,自动通知视图更新

react: this.setState({状态名: 新的值})  (基于MVC,需要让setState通知更新)

vue: this.状态名 = 新的值    (基于MVVM会触发set通知watch更新)

react与vue的key值的作用

当key相同时,且元素类型相同,会进行最小粒度更新,而key不同的时候,新旧虚拟dom对比,react||vue会认为是不同的两个元素,会直接进行替换。

v-for 的原生js实现  

使用数组的map方法,将每一个结构return出去

例:typeList.map(item=>{

          return <Button getBtn={getBtn} type={item.type} key={item.id}>{item.name}</Button>

       })

v-modal 的原生js实现

v-modal是表单控件的双向绑定指令,将表单控件的value值交给状态管理,在表单控件上绑定change事件,当表单控件的value值改变,立即触发change方法,在change方法中通过拿到事件对象改变value的状态并通知视图更新,便实现了双向绑定的原理!

vue data为什么是函数

因为函数的作用域是独立的,防止data中的数据被同一种组件的不同实例所影响。

相关文章

  • 数据驱动以及vue功能原生js实现

    数据驱动通用思想: 把界面要变化的部分,抽取到动态数据中,通过数据变化,自动更新视图 1. 书写静态组件 reac...

  • Vue框架基础

    原生js与Vue框架的区别 用原生实现双向数据绑定 用Vue实现双向数据绑定 Vue是一个javaScript框架...

  • VUE基本使用

    vue简介 vue.js的数据驱动视图是基于MVVM模型实现的 model 代表数据 view 代表视图模板 vi...

  • vue面试需要用到的相关知识点

    1.vue.js的两个核心是什么? vue.js的两个核心分别是数据驱动(MVVM)和组件化。 一、数据驱动 数据...

  • 记录简单实现Vue2中的响应式原理

    Vue是数据驱动视图模式,数据变更后,会自动更新视图。 原生js中要更新视图通常是通过触发事件,然后修改数据,最后...

  • vue核心知识点

    vue.js的两个核心是什么 数据驱动也叫双向数据绑定 Vue.数据观测管理在技术实现上,利用的是ES5Objec...

  • 2020 vuejs 数据驱动(Zig)

    数据驱动 Vue.js 的核心思想就是数据驱动。那么什么是数据驱动呢? 数据驱动就是视图由数据决定,数据作为主动。...

  • vue面试题整理

    vue是什么? vue是构建数据驱动的web界面的渐进式框架。Vue.js 的目标是通过尽可能简单的 API 实现...

  • 2018最新web前端VUE面试题

    vue是什么? vue是构建数据驱动的web界面的渐进式框架。Vue.js 的目标是通过尽可能简单的 API 实现...

  • 树形结构递归/原生js实现/vue递归组件

    原生js实现递归渲染 Vue2.0递归组件

网友评论

      本文标题:数据驱动以及vue功能原生js实现

      本文链接:https://www.haomeiwen.com/subject/qcyeaktx.html