Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >二、Vue 页面渲染过程

二、Vue 页面渲染过程

作者头像
程序员爱酸奶
发布于 2020-02-29 09:25:17
发布于 2020-02-29 09:25:17
1.4K00
代码可运行
举报
文章被收录于专栏:程序员爱酸奶程序员爱酸奶
运行总次数:0
代码可运行

前言

上篇博文我们依葫芦画瓢已经将hello world 展现在界面上啦,但是是不是感觉心虚虚的,总觉得这么多文件,项目怎么就启动起来了呢?怎么访问到8080 端口就能进入到我们的首页呢。整个的流程是怎么样的呢?

我也是刚刚接触,所以就会有这样的困惑,所以这篇就简单的理解一下项目页面渲染的过程。

渲染过程

我们上篇文章说main.js 是无用的,是废代码,只是起到支撑框架的。但是其实我们应该有感觉,把他删除了整个项目就跑步起来了。其实main.js 算是项目的入口了。我们就从这个文件看起。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import Vue from 'vue'
import App from './App'
import router from './router'

Vue.config.productionTip = false

new Vue({
  el: '#app',
  router,
  components: { App },
  template: '<App/>'
})

可以看到代码非常的少,就导入了vue.js、我们的APP.vue 以及index.js

第一次做动图,操作像是老年人,大家见谅。上图可以大概的看到引入的三个文件是什么了。Vue.config.productionTip = false 我们这里暂时不管,知道是一个配置信息就可以了,感兴趣的可以百度一下就知道什么意思了。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
new Vue({
  el: '#app',
  router,
  components: { App },
  template: '<App/>'
})

上面这些,如果完全没有vue 语法知识的话,确实不知道什么意思,但是我们看官网教程,起步的时候都是在当个html 文件中使用vue 的。在js 中就会用到这个。

可以看到,其实都是差不多的,所以这里的作用就是实例化一个Vue。当然我们项目中,这里是为整个项目实例化了一个Vue ,el 指定的元素,这里就是我们index.html 中的div啦。

router 就指定路由,也就是我们在index.js 配置的路由信息。components 指定的组件信息。项目有一个父组件就是APP.vue。我们自己写的所有组件都是在这个父组件之下的。怎么说呢,也就是说所有的界面,最外层的div 就是APP.vue 定义的。div 中其他的div 才是我们自己写的。看下面这个应该就会有所感觉吧。

所以这里我们就可以解答上篇文章,为什么我们只是写了一个hello world 。但是为什么界面上呈现的会有图标,还有样式。因为在APP.vue 中设置了这些东西。我们APP.vue 中的这些内容注释掉就可以看到效果。

我们将APP.vue logo和样式去掉,再来看看内容

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<template>
  <div id="app">
    <router-view/>
  </div>
</template>

<script>export default {
  name: 'App'
}
</script>

是不是发现和我们在组件中自己写的Hello.vue 格式完全一样,哈哈没错,vue文件就是这样的格式。可以看到template 渲染的是id 为app 的盒子(div)。这里应该是覆盖了index.html中的d 也为app 的盒子。

所有的 router-view 中的内容,都会被自动替换。script 中的代码则是脚本代码。

至此,整个过程就出来了:项目启动首先会读取main.js 。实例化一个vue,然后渲染APP.vue 文件内容,我们自己写的vue 组件则是通过路由转接到父组件下的。

番外

我们项目的流程就讲到这里把,算是对上篇的补充,让我们对项目启动,界面渲染算是有一个大概的了解啦,我们接下来就按照官网上讲一下vue 的一些语法和特性,但是与官网上不同的是,官网上都是一个个的html,而我们就在这个项目的基础的上。将会是一个个的vue 文件。

代码上传到github: https://github.com/QuellanAn/zlflovemmVue

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-12-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序员爱酸奶 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
浅入深出Vue:第一个页面
首先我们是要做一个博客网站,UI 框架采用江湖传闻中的 ElementUI,今天我们就来利用它确定我们博客网站的基本布局吧。
熙世
2019/07/12
1.4K0
浅入深出Vue:第一个页面
vue- Vue-Cli脚手架工具安装 -创建项目-页面开发流程-组件生命周期- -03
下面的命令都是在 命令行中 执行(-g 参数代表全局(global),会自动配置环境变量)
suwanbin
2019/10/12
1.2K0
vue- Vue-Cli脚手架工具安装 -创建项目-页面开发流程-组件生命周期- -03
Vue中实现路由跳转传参
3. 在src/main.js中使用Vue.use()方法注册全局VueRouter
用户4396583
2024/08/13
5250
Vue(下)
日常开发中,通常设置一个app组件作为主组件(相当于单文件组件的App.vue):
十玖八柒
2022/08/01
2.3K0
Vue(下)
从零到部署:用 Vue 和 Express 实现迷你全栈电商应用(一)
Vue 是尤雨溪[1]在 2014 年创建的一个前端框架,目前 Github[2] Star 数高达 150K,是 Star 数最高的前端项目,并且 Vue 有着极为活跃的社区生态以及专职团队进行维护以确保项目可以健康长久地发展。
一只图雀
2020/04/07
1.1K0
Vue + ElementUI 集成 Vue Router
最新写 Vue 项目使用 ElementUI 做前端, 然后需要集成一个 vue Router, 主要功能是侧边栏不刷新而内容刷新, 看了几个 starter 都和需求不太一样, 因此干脆自己搞一个
szhshp
2022/09/21
4400
用后台开发的逻辑理念学习VUE
近些年前端开发快速发展,现在学习前端已经不像以前那样仅仅学习一个语法就可以了,它已经是一门编程技术了,它们有自己独立的类似Main函数的入口,有像MVC一样规范好的层次结构,有自己的开发工具可以发布打包程序,甚至还可以独立连接数据库,当然了,优点与缺点共存,不能向其他语言那样断点调试导致了,它的脉络更难被捕捉,犹如远古时代的代码开发一样,但它还是已经可以称为一门编程技术了,所以学习一门前端开发,已经是一件非常有意义的事儿了。
Kiba518
2020/09/17
6710
用后台开发的逻辑理念学习VUE
包学会之浅入浅出Vue.js:开学篇
Vue 是国人写的,技术文档也妥妥的是中文,想到这我就有学习的动力。
蔡述雄
2018/01/15
27.5K21
包学会之浅入浅出Vue.js:开学篇
Vue cli入门 原
最近看到一个vue cli入门的例子,写的非常详细,对入门vue cli很有帮助,原文链接
tianyawhl
2019/04/04
5410
Vue cli入门
                                                                            原
Vue路由vue-router
Vue Router 是 Vue.js 官方的路由管理器 github: https://github.com/vuejs/vue-router 中文官方网站https://router.vuejs.org/zh/ 安装vue-router
羊羽shine
2019/06/25
1K0
Vue路由vue-router
一个Java程序猿眼中的前后端分离以及Vue.js入门
松哥的书里边,其实有涉及到 Vue,但是并没有详细说过,原因很简单,Vue 的资料都是中文的,把 Vue.js 官网的资料从头到尾浏览一遍该懂的基本就懂了,个人感觉这个是最好的 Vue.js 学习资料 ,因此在我的书里边就没有多说。但是最近总结小伙伴遇到的问题,感觉很多人对前后端分离开发还是两眼一抹黑,所以今天松哥想和大家聊一下前后端分离以及 Vue.js 的一点事,算是一个简单的入门科普吧。
江南一点雨
2019/05/07
1.5K0
一个Java程序猿眼中的前后端分离以及Vue.js入门
Python-drf前戏38.3-前端Vue03
-多年互联网运维工作经验,曾负责过大规模集群架构自动化运维管理工作。 -擅长Web集群架构与自动化运维,曾负责国内某大型金融公司运维工作。 -devops项目经理兼DBA。 -开发过一套自动化运维平台(功能如下): 1)整合了各个公有云API,自主创建云主机。 2)ELK自动化收集日志功能。 3)Saltstack自动化运维统一配置管理工具。 4)Git、Jenkins自动化代码上线及自动化测试平台。 5)堡垒机,连接Linux、Windows平台及日志审计。 6)SQL执行及审批流程。 7)慢查询日志分析web界面。
DriverZeng
2022/09/26
7870
Python-drf前戏38.3-前端Vue03
vue.js单页应用_vue嵌入第三方页面
今天我们看看VUE怎么开发单页面应用,VUE提供了脚手架vue-cli,通过这个可以很轻松的创建VUE单页面应用,
全栈程序员站长
2022/11/04
1.5K0
vue.js单页应用_vue嵌入第三方页面
测试平台开发(二) 高逼格登录页面
怎么样?哎哟,不错哦。本文就带大家一起用 Vue + Element-UI 把这个不错的登录页面开发出来。
dongfanger
2020/11/04
1.2K0
测试平台开发(二) 高逼格登录页面
vue2进阶篇:vue-router之基础路由
被用于路由的组件,实际this(也就是vc)上都会多<font color='red'>两个属性\$route和\$router</font>详情看如下图片。<font color='red'>其中\$route指代路由规则,\$router指代整个应用的路由器,只有一个</font>。即路由不同组件上的\$route属性都不一样,而路由不同组件上的\$router却是相同的。
刘大猫
2024/10/13
1140
Vue-CLI脚手架基本使用和Vue2项目结构及路由
Vue-CLI(俗称:vue脚手架)是vue官方提供的、快速生成vue工程化项目的工具。
岳泽以
2022/11/07
1.5K0
Vue-CLI脚手架基本使用和Vue2项目结构及路由
【SpringBoot+Vue】003-创建Login组件、编写Login组件的页面
当写到CSS的时候,真的发现自己的CSS知识不足,仅仅知道一点常规的东西,UP主写的CSS很多我都不记得了,看来自己的路还有很长!加油!
訾博ZiBo
2025/01/06
1280
【SpringBoot+Vue】003-创建Login组件、编写Login组件的页面
Vue + Spring Boot 项目实战(二):使用 CLI 搭建 Vue.js 项目
在前端项目开发中,我们可以根据实际情况不同程度地使用 Vue。利用 Vue CLI(或写成 vue-cli,即 Vue 脚手架)搭建出来的项目,是最能体现 Vue 的特性的。这点在接下来的内容中我们可以慢慢感受。
全栈程序员站长
2022/08/12
1.3K0
Vue + Spring Boot 项目实战(二):使用 CLI 搭建 Vue.js 项目
一个Java程序猿眼中的前后端分离以及Vue.js入门
前后端不分,Jsp 是一个非常典型写法,Jsp 将 HTML 和 Java 代码结合在一起,刚开始的时候,确实提高了生产力,但是时间久了,大伙就发现 Jsp 存在的问题了,对于后端工程师来说,可能不太精通 css ,所以流程一般是这样前端设计页面-->后端把页面改造成 Jsp --> 后端发现问题 --> 页面给前端 --> 前端不会Jsp。这种方式效率低下。特别是在移动互联网兴起后,公司的业务,一般除了 PC 端,还有手机端、小程序等,通常,一套后台系统需要对应多个前端,此时就不可以继续使用前后端不分的开发方式了。
南风
2019/08/29
9410
一个Java程序猿眼中的前后端分离以及Vue.js入门
Asp.net+Vue2构建简单记账WebApp之四(vue.js构建记账主页面)
一、安装我们所需要的一些库 cnpm install mint-ui -S // 安装mint-ui库,ui库,cnmp是按照淘宝镜像后的用法,用法和npm一样。-s是将库添加到项目的packag
易兒善
2018/08/21
1.1K0
Asp.net+Vue2构建简单记账WebApp之四(vue.js构建记账主页面)
相关推荐
浅入深出Vue:第一个页面
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验