当前位置: 首页 > wzjs >正文

日本政府网站建设经验网站建设的基本

日本政府网站建设经验,网站建设的基本,广州最穷的区是哪个区,网站上做相关链接在 Vue 中,组件的 template 需要被转换为 JavaScript 渲染函数(Render Function)才能在浏览器中运行。Vue 2 和 Vue 3 的转换机制有所不同,主要体现在编译时机、编译工具和输出结果上。 1. Vue 2 的 Template 转换 转换方式 Vue…

在 Vue 中,组件的 template 需要被转换为 JavaScript 渲染函数(Render Function)才能在浏览器中运行。Vue 2 和 Vue 3 的转换机制有所不同,主要体现在编译时机、编译工具和输出结果上。

1. Vue 2 的 Template 转换

转换方式

Vue 2 使用 vue-template-compiler 在构建时(通常是 Webpack 的 vue-loader)将 .vue 文件中的 <template> 编译为渲染函数。

步骤
  1. 开发阶段

    • 通过 vue-loader 处理 .vue 文件,提取 <template> 部分。

    • 使用 vue-template-compiler 将模板编译为 render() 函数。

    • 最终生成的代码类似:

render(h) {return h('div', { attrs: { id: 'app' } }, 'Hello World');
}

2.运行时

  1. 如果未预编译(如直接使用 template: '<div>Hello</div>' 选项),Vue 2 会在浏览器中动态编译(需要包含完整版 Vue,体积较大)。
关键点
  • 依赖vue-template-compiler(必须与 Vue 2 版本严格匹配)。

  • 输出:渲染函数使用 h(即 createElement)生成虚拟 DOM。

  • 动态编译:完整版 Vue(含编译器)支持运行时编译,但推荐预编译以优化性能。

2. Vue 3 的 Template 转换

转换方式

Vue 3 使用 @vue/compiler-sfc(单文件组件编译器)和 @vue/compiler-dom(模板编译器),编译过程更高效且支持更多优化。

步骤
  1. 开发阶段

    • @vue/compiler-sfc 解析 .vue 文件,分离 <template><script><style>

    • @vue/compiler-dom 将模板编译为 优化后的渲染函数

    • 生成的代码使用 import { createVNode } from 'vue',例如:

import { createVNode as _createVNode } from 'vue';
export function render(_ctx, _cache) {return _createVNode('div', { id: 'app' }, 'Hello World');
}

2.运行时

  1. Vue 3 不再支持浏览器内的动态模板编译(即使使用完整版),所有模板必须预编译。
  2. 渲染函数直接使用 createVNode(替代 Vue 2 的 h)。
关键点
  • 依赖@vue/compiler-sfc(Vite 或 Vue CLI 内部集成,无需手动配置)。

  • 输出:渲染函数更高效,支持静态节点提升(Static Hoisting)、补丁标志(Patch Flags)等优化。

  • 体积更小:由于移除了运行时编译器,生产包更精简。

3. Vue 2 和 Vue 3 的主要区别

特性Vue 2Vue 3
编译器工具vue-template-compiler@vue/compiler-sfc
运行时编译支持(需完整版 Vue)不再支持(必须预编译)
渲染函数生成h(createElement)createVNode
优化策略基础虚拟 DOM 优化静态提升、补丁标志等高级优化
体积影响完整版含编译器,体积较大更精简(无运行时编译器)

 

总结

  • Vue 2

    • 依赖 vue-template-compiler,支持运行时编译(但推荐预编译)。

    • 渲染函数使用 h,优化较少。

  • Vue 3

    • 依赖 @vue/compiler-sfc,强制预编译,渲染函数使用 createVNode

    • 编译时优化更多,性能更好,包体积更小。

最佳实践:无论 Vue 2 还是 Vue 3,都应通过构建工具(Webpack/Vite)预编译模板,避免运行时开销。

 

http://www.dtcms.com/wzjs/429617.html

相关文章:

  • 河南郑州网站建设百度智能云建站
  • 大米网站模板seo做得比较好的企业案例
  • 企业网站 公安备案淘宝指数入口
  • wordpress搭建web站点广告联盟骗局
  • 微信网站建设费用网络营销的方式
  • 网站设计师前景商务软文写作范文200字
  • wordpress注释插件威海seo优化公司
  • 门户网站 模板之家全网推广推荐
  • typecho迁移wordpress优化电池充电什么意思
  • 如何用python 做网站互联网营销推广
  • 买个人家的网站绑定自己的域名上海网站建设咨询
  • 网站设计跟网站开发区别建站优化推广
  • 手机网站建设哪家公司好郑州网站优化平台
  • wordpress站点url今日头条收录入口
  • 教学成果奖网站建设篮网最新消息
  • 重庆seo整站优化服务南宁正规的seo费用
  • 祥云平台做网站如何制作网站建设入门
  • 建设京东物流网站的目标是什么手机免费建站app
  • 设计类网站推荐及介绍百度怎么精准搜关键词
  • 如何用dw做asp动态网站阿里云注册域名
  • 东莞企业模板建站提高百度搜索排名工具
  • 银川网站建站公司常用的网络营销方法及效果
  • 深圳网站建设在哪里找seo应该如何做
  • php做网站需要后台吗青岛seo排名收费
  • 深圳疫情防控最新规定seo咨询服务
  • 锦州如何做百度的网站2022最近的新闻大事10条
  • 深圳市网站建设外包公司今日新闻最新10条
  • 固定ip如何做网站服务器百度收录入口提交查询
  • 注册网站免费注册ins长沙百度贴吧
  • 建一个下载网站要什么cms系统怎样才能注册自己的网站