petite-vue不止是变得更小,它还是渐进式增强的最佳实践。

Vue不构建或构建都能使用。当通过构建使用时(例如使用单文件组件),Vue预编译所有的模板,所以运行时没有再处理模板。多亏了树摇(three-shaking),我们可以在Vue中提供可选的功能,它们在不使用时并不会增大你打包生成的文件。用构建方式使用这是vue的使用的最佳实践,它更适合构建具有相对繁重交互的 SPA 或应用程序。

通过不构建的方式使用Vue并且挂载到 DOM 内模板,是很不推荐的使用方式,这是因为:

    • 我们需要把Vue模板编译器下载到浏览器。(额外多13kb大小)
    • 编译器需要从实例化的DOM中获取模板字符串
    • 编译器将字符串编译成 JavaScript 渲染函数
    • Vue将通过渲染函数新生成的DOM替换到已存在的DOM模板上。

petite-vue通过遍历现有的 DOM 并直接将细粒度的反应效果应用到元素上来避免所有这些开销。DOM就是模板,这意味着petite-vue 在渐进式增强场景中更加的高效。

这也是 Vue 1 的工作方式。这种方法与 DOM 耦合,因此不适合与平台无关的渲染或 JavaScript SSR。我们也失去了使用渲染函数进行高级抽象的能力。但是,正如您可能知道的那样,在渐进增强的场景中不太会需要这些功能。

翻译资料:Comparison with standard Vue.https://github.com/vuejs/petite-vue#comparison-with-standard-vue

总结:

vue不构建使用时,需要从实例化的DOM中读取模板字符串,编译成渲染函数,再替换到已存在的DOM上。

petite-vue是直接遍历DOM,若有更新,则直接应用到DOM上。

petite-vue使用场景:开发大量静态少量交互的页面。它为渐进式增强而生。

If you have strict CSP requirements, you should probably use standard Vue and pre-compile the templates.

推荐学习资料:

【1】如何在不看源码情况下学petite-vue源码.https://zhuanlan.zhihu.com/p/389045348

【2】introduction-to-petite-vue.https://blog.logrocket.com/introduction-to-petite-vue

petite-vue和Vue的比较的更多相关文章

  1. vue入门 vue与react和Angular的关系和区别

    一.为什么学习vue.js vue.js兼具angular.js和react的优点,并且剔除了他们的缺点 官网:http://cn.vuejs.org/ 手册:http://cn.vuejs.org/ ...

  2. Vue (三) --- Vue 组件开发

    ------------------------------------------------------------------好心情,会让你峰回路转. 5. 组件化开发 5.1 组件[compo ...

  3. vue学习:vue+webpack的快速使用指南(新手向)

    一.vue有两种使用方式: 1.下载vue.js <script src="vue.js"></script> 2.使用npm npm install vu ...

  4. Vue 项目 Vue + restfulframework

    Vue 项目 Vue + restfulframework 实现登录认证 - django views class MyResponse(): def __init__(self): self.sta ...

  5. 【vue】vue +element 搭建项目,组件之间通信

    父子组件通信 父 通过props属性给 子传递数据 子 操作 父  this.$parent.XXX 子通过$emit传递参数 或者通过vue-bus vue-bus既可以实现父子组件之间的通信,也可 ...

  6. 【vue】vue +element 搭建项目,vuex中的store使用

    概述: 每一个 Vuex 应用的核心就是 store(仓库).“store”基本上就是一个容器,它包含着你的应用中大部分的状态 (state).Vuex 和单纯的全局对象有以下两点不同: Vuex 的 ...

  7. vue的.vue文件是怎么run起来的(vue-loader)

    vue的.vue文件是怎么run起来的(vue-loader) 引子:vue的.vue文件是怎么跑起来的? 答:通过vue-loader,解析.vue文件,在webpack解析,拆解vue组件 1.v ...

  8. vue学习之用 Vue.js + Vue Router 创建单页应用的几个步骤

    通过vue学习一:新建或打开vue项目,创建好项目后,接下来的操作为: src目录重新规划——>新建几个页面——>配置这几个页面的路由——>给根实例注入路由配置 src目录重整 在项 ...

  9. python 全栈开发,Day89(sorted面试题,Pycharm配置支持vue语法,Vue基础语法,小清单练习)

    一.sorted面试题 面试题: [11, 33, 4, 2, 11, 4, 9, 2] 去重并保持原来的顺序 答案1: list1 = [11, 33, 4, 2, 11, 4, 9, 2] ret ...

  10. import Vue form 'vue’的意思

    1.import Vue form ‘vue’ 写全的话是import Vue from ‘…/nodemouls/vue/list/vue.js’: 此时在webpack.base.conf.js中 ...

随机推荐

  1. 洛谷 P4135 作诗 题解

    题面. 之前做过一道很类似的题目 洛谷P4168蒲公英 ,然后看到这题很快就想到了解法,做完这题可以对比一下,真的很像. 题目要求区间内出现次数为正偶数的数字的数量. 数据范围1e5,可以分块. 我们 ...

  2. MvvmLight框架的基本使用

    关于MvvmLight框架的介绍可以看这篇,说的很详细,在此记录下来以作复习,通过一个简单的例子说明MvvmLight的基本使用 https://www.cnblogs.com/3xiaolonglo ...

  3. CB利用链及无依赖打Shiro

    前言 前面已经学习了CC1到CC7的利用链,其中在CC2中认识了java.util.PriorityQueue ,它在Java中是一个优先队列,队列中每一个元素有自己的优先级.在反序列化这个对象时,为 ...

  4. MongoDB 数据库的学习

    一.MongoDB的简介 1.MongoDB是什么? MongoDB 是由 C++ 语言编写的,基于分布式文件存储的数据库,是一个介于关系数据库和非关系数据库之间的产品,是最接近于关系型数据库的 No ...

  5. vs同步配置

    做法(整个流程的过程):1.安装插件2.在GitHub上生成token3.获取gistid4.使用2,3步生成的token和gistid 1.在vscode上安装 settings sync 插件(我 ...

  6. 「Goravel 上新」用户授权模块,让你简单的对非法用户 Say No!

    首先,让我们定义一个规则:用户只能访问自己创建的文章. facades.Gate.Define("update-post", func(ctx context.Context, a ...

  7. Blender修改视野范围

    首先,我不是专门的建模人员.但是有时候会拿到建模人员的制作的模型导入进行修改. 比如简单的删除某个模型,调整模型的尺寸. 还有就是调整模型的建模中心点,这点有时候显得特别重要,模型的中心点偏离较大会给 ...

  8. 全都会!预测蛋白质标注!创建讲义!解释数学公式!最懂科学的智能NLP模型Galactica尝鲜 ⛵

    作者:韩信子@ShowMeAI 机器学习实战系列:https://www.showmeai.tech/tutorials/41 深度学习实战系列:https://www.showmeai.tech/t ...

  9. 利用云服务提供商的免费证书,在服务器上发布https前端应用和WebAPI的应用

    我们如果要在服务器上发布https前端应用和WebAPI的应用,那么我们就需要用到https证书了.我们一般发布的应用的云服务器上,都会提供一定量的相关的免费证书(一般为20个)供我们使用,每个一年期 ...

  10. jQuery使用 前端框架Bootstrap

    目录 jQuery查找标签 1.基本选择器 2.组合选择器 3.后代选择器 4.属性选择器 5.基本筛选器 7.筛选器方法 链式操作的本质 操作标签 1.class操作 2.位置操作 3.文本操作 4 ...