使用 Vue.js 框架后的感想
前言
用 Vue 已经有段时间了,把自己的所想所悟写下来,每一个想法都是非常宝贵的,记录成为生活,记录成为习惯。
简化开发
Vue 是可以辅助前端工程师开发 Web App 的一种框架,它节省很多时间,让我们更多的专注于业务代码的编写。它极大地节省 DOM 操作,非常快速地构建用户界面,以组件的形式把界面拆分成一块,达到可拆卸、可复用,相当于零件。
假如,渲染一个列表:
let ul = document.createElement('ul');
for (let i = 0; i < 10; i++) {
let li = document.createElement('li');
let p = document.createElement('p');
p.innerText = `Title${i}`;
let div = document.createElement('div');
let p1 = document.createElement('p');
p1.innerText = `Index: ${i}`;
let p2 = document.createElement('p');
p2.innerText = `Hello Vue.js!`;
div.appendChild(p1);
div.appendChild(p2);
li.appendChild(p);
li.appendChild(div);
ul.appendChild(li);
}
let root = document.getElementById('root');
root.appendChild(ul);
业务增加,嵌套标签的内容增加,结构也越来越复杂。你希望简单快捷的代码编写步骤吗?终究是人的懒嘛。开发 Web App 最烦的就是 DOM 操作,要一个个地获取。JQuery 可以减少这方面的操作。随着行业的发展,就衍生出更好用的技术。
Vue 渲染列表就是在页面标签中写好基本的结构,用 v-for 依次渲染每一项标签:
<div id="root">
<ul>
<li v-for="(item, index) in items" :key="item.index">
<p>Title: {{ item.title }}</p>
<div>
<p>Index: {{ index }}</p>
<p>{{ item.data }}</p>
</div>
</li>
</ul>
</div>
比起用 JS 添加这些节点和数据,用 Vue 框架来渲染这些节点要简单、快捷、高效得多。
Vue.createApp({
data() {
return {
items: [
{ title: 'h', data: 'Hello Vue.js!', index: 0 },
{ title: 'e', data: 'Hello Java!', index: 1 },
{ title: 'l', data: 'Hello JavaScript!', index: 2 },
{ title: 'l', data: 'Hello HTML!', index: 3 }
]
}
}
}).mount('#root');
以大化小的组件
Vue 还有一个非常重要的概念——组件,一个页面内容非常地多,如果还是把页面看作是一个整体开发,以后维护起来也非常困难,其他小伙伴后期加入开发理解起来也很困难。还不如把整体拆分成部分,就像是解决问题以大化小,以小化了。
组件的作用就是拆分页面,像是零件组装产品一样,而且零件可以很好地配置到其他地方,零件可以复用。开发过 Flutter 的小伙伴肯定知道,一个页面就是一个 .dart 文件,独立的、单独的。在 Vue 框架开发下,Web App 的一个页面就是一个 .vue 文件;页面中许许多多的一小块,就是一个 Vue 组件,也是以一个 .vue 文件存在,即单文件组件。
使用 Vue.js 框架后的感想的更多相关文章
- html的Vue.js框架概述
前端的三大框架: Augular.js 由Google的研发团队最先写出 React.js 由facebook的团队继Augular.js之后写出 Vue.js ...
- Vue.js框架的基础指令
Vue.js 渐进式 javascript 框架,可以独立完成前后端分离式web项目的javascript框架 js是页面脚本语言,用来控制或是辅助页面搭建,vue是js功能的集合体. 三大主流前端框 ...
- Vue.js——框架
一.什么是VUE vue 是一个构建用户界面的javascript框架 特点:轻量,高效 特性:双向数据绑定,数据驱动视图 二.vue的使用 1.引入vue.js <script src=vue ...
- IDEA安装vue.js插件后,new没有Vue component
首先要安装vue相关的插件vue.js 但是很多人安装vue.js右键发现没有vue Componment,解决方法如下 Settings>Editor>File and Code Tem ...
- Django+Vue.js框架快速搭建web项目
一.vue环境搭建1.下载安装node.js.2.安装淘宝镜像cnpm,在命令窗口输入: npm install -g cnpm --registry=https://registry.npm.tao ...
- vue.js 发布后路径引用问题
在发布到iis目录下时候,如果放在网站的根目录下的时候,是不会有什么问题的 但是一旦放在了非根目录的其他文件夹里面,这时候index.html里引用的js和css文件路径都会找不到 错误如下 打开in ...
- vue.js框架图片上传组件
html: <div id="app"> <div class="hello"> <div class="upload& ...
- vue.js打包后,接口安全问题
后面有一位朋友回答后台origin判断,但另一个朋友说可以通过代理请求就绕过跨域. 想想也对,代理的话origin就无效了,页面还是可以跑起来. 不知道有没有人想过这个问题,还是我想的方向有误,请各位 ...
- Vue.js 学习笔记 第1章 初识Vue.js
本篇目录: 1.1 Vue.js 是什么 1.2 如何使用Vue.js 本章主要介绍与Vue.js有关的一些概念与技术,并帮助你了解它们背后相关的工作原理. 通过对本章的学习,即使从未接触过Vue.j ...
随机推荐
- Abp Vnext源码解析系列文章01---EventBus
一.简介 BP vNext 封装了两种事件总线结构,第一种是 ABP vNext 自己实现的本地事件总线,这种事件总线无法跨项目发布和订阅.第二种则是分布式事件总线,ABP vNext 自己封装了一个 ...
- (C++)读取一个输入的int型十进制数字的位数,并正序输出每个位上的值(不同数位的值用1个空格字符间隔)
1 /* 2 程序功能:读取一个输入的int型十进制数字的位数,并正序输出每个位上的值(不同数位的值用1个空格字符间隔). 3 例如:当输入985这个数字时,显示如下信息: 4 985是一个3位数字! ...
- 如何在Vue项目中,通过点击DOM自动定位VScode中的代码行?
作者:vivo 互联网大前端团队- Youchen 一.背景 现在大型的 Vue项目基本上都是多人协作开发,并且随着版本的迭代,Vue 项目中的组件数也会越来越多,如果此时让你负责不熟悉的页面功能开发 ...
- 业务可视化-让你的流程图"Run"起来
前言 最近在研究业务可视化的问题,在日常的工作中,流程图和代码往往是分开管理的. 一个被维护多次的系统,到最后流程图和代码是否匹配这个都很难说. 于是一直有一个想法,让程序直接读流程图,根据流程图的配 ...
- 攻防世界pwn题:Recho
0x00:查看文件信息 一个64位二进制文件,canary和PIE保护机制没开. 0x01:用IDA进行静态分析 分析:主程序部分是一个while循环,判断条件是read返回值大于0则循环.函数ato ...
- 史上最全学习率调整策略lr_scheduler
学习率是深度学习训练中至关重要的参数,很多时候一个合适的学习率才能发挥出模型的较大潜力.所以学习率调整策略同样至关重要,这篇博客介绍一下Pytorch中常见的学习率调整方法. import torch ...
- Tapdata 等40余家行业知名企业,应邀参与共建 NextArch Foundation
日前,Linux 基金会执行董事 Jim Zemlin 于 Linux 基金会会员峰会(The Linux Foundation Member Summit)上宣布,Linux 基金会正式成立 N ...
- Visdom
安装visdom pip install visdom 启动visdom服务 python -m visdom.server visdom绘制各种图形: visdom属性介绍: 实例: from vi ...
- SpringBoot接口 - 如何优雅的对参数进行校验?
在以SpringBoot开发Restful接口时, 对于接口的查询参数后台也是要进行校验的,同时还需要给出校验的返回信息放到上文我们统一封装的结构中.那么如何优雅的进行参数的统一校验呢? @pdai ...
- Vue中关于this指向的问题
由Vue管理的函数 例如: computed 计算属性 watch 监视属性 filters (Vue3中已弃用且不再支持) 过滤器 .... 上述属性里配置的函数不要采用箭头函数写法,因为箭头函数没 ...