回顾前面的内容,是按照WEB的发展史在推进:
HTML + CSS :适合做简单的静态页面
DOM + JS: 让页面动起来
jQuery: 通过封装原生DOM, 简化DOM的操作
自动化+工程化: 现在最流行的开发方式
Angular2009
-> React2013
-> Vue2014
官方网站: Vue.js
Vue的版本目前有3个:
目前: 学习vue2 和 vue3
编程方式分两种:
脚本下载地址: 安装 — Vue.js
使用vue脚本,初始化后的提示
打一个比方,假如现在需要在马路上刨个坑
VUE脚本中, vue服务当前的box元素 ,作者借鉴了 模板字符串的语法, 为HTML提供了相似的功能 ,只要用 {{ }} 就能把JS代码书写在HTML里 。
在那之前,要利用构造函数, 创建一个vue对象 --“自动化的工具”,Vue构造函数, 接收一个对象类型最为实参,此对象类型中的属性, 都是固定的, 具体要看官网文档: https://cn.vuejs.org/v2/api/
使用{{ }}将JS代码书写进HTML 双括号还拥有JS的计算功能。
标签内容, 用{{ }} 实现插值,而要实现属性绑定,需要在属性名前加冒号,等哈后面接JS语法
:属性名="JS代码"
原生语法使用onclick添加事件,在VUE语法里,是在事件名前添加@
@事件名="方法"
Vue的核心竞争力之一:监听数据的变化, 自动更新关联的元素
num==1 是真, 则不可用, 否则可用
target: 触发此次事件的当事元素
总结: 函数有两种绑定方案
“y”传参使用的是VUE方法,直接把click事件上的实参“20”,传递出来,“e”是使用DOM方法,将储存在自定义属性“data-x”上的值“10”,用event传递出来(要到点击事件里面查找当前元素里的 自定义属性 储存实参的地方,即e.target.dataset中把值取出来),后者要麻烦很多。
vue的指令: vue提供的一些 元素的属性, 增强元素的操作
v-html 本质: 修改了 innerHTML, 值作为HTML解析后展示
v-text 修改 innerText, 值是文本,不会解析
正常情况: 通过事件改变后数据变化 会 重新渲染相关的元素
v-once: 一次性. 只初次渲染元素一次. 以后不再变化
v-if : 根据条件 是真还是假, 来选择是否要渲染元素到页面上,外观 同v-show一样都会导致元素不可见 。
面试常考: v-if 和v-show 都可以隐藏元素, 有什么差别?
使用场景:
作者借鉴了 JS 的 遍历语法 for..in 和 for..of ,JS中: for(let 变量 in 对象)
无需声明变量, 直接用 ,in和of 没有区别, 都是遍历数组, 不同于JS的设定
v-for支持解构语法,但是需要注意的是,如果有修改数据的需求,不建议使用解构语法,因为修改的就是解构的变量,而不是修改对象中的属性。
脚手架是 一类软件的 总称: 此工具可以自动生成 完善的项目包
需要使用npm工具安装
前提条件 -- 具体配置方式, 查看jQuery最后一天的笔记
1.node版本在 12 ~ 16之间 : node -v
2.确保npm是中国镜像 : taobao
查看: npm config get registry
设置为中国镜像: npm config set registry https://registry.npm.taobao.org
3.全局安装vue的脚手架工具 -- 凡是安装失败的, 肯定是中国镜像不对或没有网
4.npm i -g @vue/cli
所有苹果电脑, 执行命令 必须加 sudo 前缀, 用管理员方式执行, 输入你的开机密码
使用 vue -V
(大写) 和 vue --version
都可以查看当前版本号
5.利用脚手架生成项目包
网速慢的同学, 几乎很难生成. -- 可以用别人生成的包
注意: 生成的目录下, 不允许有
vue.js
文件