使用 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 ...
随机推荐
- Mysql命令行插入字段超长不报错,而jdbc报错问题分析
异常信息 exception.ServiceException: com.mysql.jdbc.MysqlDataTruncation: Data truncation: Data too long ...
- Docker运行资源控制
概述 一个 docker host 上会运行若干容器,每个容器都需要 CPU.内存和 IO 资源.对于 KVM,VMware 等虚拟化技术,用户可以控制分配多少 CPU.内存资源给每个虚拟机.对于 ...
- 《HALCON数字图像处理》第六章笔记
目录 第六章 图像增强 图像增强的概念和分类 灰度变换 直方图处理 图像的平滑 图像的锐化 图像的彩色增强 我在Gitee上建了个仓库,会将学习书本的时候打的一些代码上传上去,笔记中所有代码都在仓库里 ...
- Linux 装完后没有声音的解决办法
备注:1)Ubuntu Desktop版本:16.042)Linux工作用户:root1. 临时方法在终端中执行命令:pulseaudio --start --log-target=syslog2. ...
- SAP Tree
Effect picture Code as bellow *&---------------------------------------------------------------- ...
- Stream常用操作以及原理探索
Stream常用操作以及原理 Stream是什么? Stream是一个高级迭代器,它不是数据结构,不能存储数据.它可以用来实现内部迭代,内部迭代相比平常的外部迭代,它可以实现并行求值(高效,外部迭代要 ...
- Centos8安装NextCloud记录
今天在网上学习了这个Nextcloud 网盘的搭建,被折磨的快崩溃了.始终是找不到答案,我在网上查了2天的资料 还是没有找到答案,今天这里总结一下安装的下面的总结: 原文出处在官网:CentOS 8 ...
- Tapdata 与阿里云 PolarDB 开源数据库社区联合共建开放数据技术生态
近日,阿里云 PolarDB 开源数据库社区宣布将与 Tapdata 联合共建开放数据技术生态.在此之际,一直专注实时数据服务平台的 Tapdata ,也宣布开源其数据源开发框架--PDK(Plu ...
- 数据结构-二叉树(Binary Tree)
1.二叉树(Binary Tree) 是n(n>=0)个结点的有限集合,该集合或者为空集(空二叉树),或者由一个根节点和两棵互不相交的,分别称为根节点的左子树和右子树的二叉树组成. 2.特数二 ...
- Ubuntu 隐藏所有窗口快捷键不生效问题
在绑定界面卡住时,切换到一个tty窗口,再切回来 gsettings reset-recursively org.gnome.settings-daemon.plugins.media-keys gs ...