1.Vue-为何学
问题
- 我们为什么学习Vue?
- 开发更快速,更高效
- 企业开发都在使用
- 前端工程师必备技能,高薪
2.Vue-是什么
- Vue是什么?
- Vue是一个JavaScript渐进式框架
- 什么是渐进式?
- 渐进式就是按需逐渐集成功能
- 什么是库和框架?
- 库是方法的集合,而框架是一套拥有自己规则的语法
3.Vue-如何学
- 我们在哪里书写Vue的代码?
- 在工程化环境下用Vue开发项目
- 我们如何才能学好Vue?
- 多练多用多总结
4.脚手架-介绍
- 用Vue开发项目,需要自己配置webpack?
- Vue官方提供了脚手架, 一套标准的文件夹+文件结构+webpack配置,快速搭建项目基本环境
- 使用脚手架的好处是什么?
- 零配置,开箱即用,基于它快速搭建项目基本开发环境
5.脚手架-准备
- 如何安装全局包?
- yarn global add 包名
- 或 npm i -g 包名
- 我们会得到什么?
- 终端里命令, 例如Vue命令, 以后创建脚手架项目
6.脚手架-创建项目-启动服务
- 如何创建一个开箱即用的脚手架项目?
- vue create 项目名
- 如何在网页上浏览这个项目?
- yarn serve 启动本地热更新开发服务器
7.脚手架-目录分析
- 脚手架里主要文件和作用?
- node_modules - 都是下载的包
- public/index.html - 浏览器运行的网页
- src/main.js - webpack打包的入口
- src/App.vue - Vue页面入口
- package.json - 项目配置信息
8.脚手架-代码和结构分析
- main.js和App.vue以及index.html作用和关系?
- main.js - 项目打包入口 - Vue初始化
- App.vue - Vue页面入口
- index.html - 浏览器运行的文件
- App.vue => main.js => index.html
9.脚手架-自定义配置
- 脚手架项目webpack配置文件是什么?
- 项目根目录下的vue.config.js配置文件
10.脚手架-eslint了解
- eslint是什么?
- eslint是代码检查工具,违反规定就报错
- 如何暂时关闭?
- 在vue.config.js中设置lintOnSave为false重启服务器即可
11.脚手架-单vue文件
- 单vue文件的好处?
- 独立作用域,不再担心变量重名问题
- 单vue文件使用注意事项?
- template里只能有一个根标签
- 单vue文件里标签和样式最后怎么显示到页面?
- webpack打包后, 插入到index.html显示
12.脚手架-清理欢迎界面
- 欢迎界面是哪些?如何清除?
- assets下图片和components下的文件,删除
- App.vue文件里代码只留个框即可
13.阶段小结-脚手架环境
-
@vue/cli是什么?
全局模块包, 安装后得到Vue命令
-
如何创建脚手架项目?
vue create 项目名, 得到一套标准文件夹+文件+webpack环境
-
脚手架项目如何启动?
yarn server启动, 内置了webpack-dev-server, 得到一个地址和端口浏览器webpack打包后网页
-
脚手架项目好处?
开箱即用, 配置好的一套环境, 快速开发自己项目
-
脚手架项目入口有哪些?
- main.js - webpack打包入口
- App.vue - Vue页面入口
- index.html - 网页入口
-
单Vue文件的好处?
- 独立作用域,作用域互不影响
- style配合scoped, 样式针对当前页面标签生效, 互不影响
14.Vue语法-插值表达式
- 什么是插值表达式?
- 双大括号,可以把Vue变量直接显示在标签内
- Vue中变量声明在哪里?
- data函数内, return的对象, 对象内的key就是变量名
15.Vue基础-MVVM设计模式
- 什么是设计模式?
- 设计模式是对代码分层,引入一种架构的概念
- MVVM是什么?
- MVVM(模型,视图,视图模型双向关联的一种设计模式)
- MVVM好处?
- 减少DOM操作,提高开发效率
16.Vue指令-v-bind动态属性
- 如何给dom标签的属性设置Vue变量?
- :属性名="Vue变量"
17.Vue指令-v-on事件绑定
- 如何给dom标签绑定事件?
- @事件名="methods里的函数名"
- 如何给事件传值?
- @事件名="methods里的函数名(实参)"
19.Vue指令-v-on事件对象
- Vue事件处理函数,如何拿到事件对象?
- 无实参,直接用第一个形参接收
- 有实参,手动传入$event
20.Vue指令-v-on修饰符
- Vue有哪些主要修饰符,都有什么功能?
- .stop - 阻止事件冒泡
- .prevent - 阻止默认行为
21.Vue指令-v-on按键修饰符
- 按键修饰符如何使用?
- @键盘事件.按键修饰符="methods里的函数名"
- 有哪些主要按键修饰符?
- .enter - 匹配回车键
- .esc - 匹配取消键
23.Vue指令-v-model双向绑定1问题
- v-model用在哪里?
- 暂时只能用在表单标签上
- v-model有什么作用?
- 把Vue的数据变量和表单的value属性双向绑定在一起
24.Vue指令-v-model双向绑定2
- 下拉菜单v-model写在哪里?
- v-model写在select上,value写在option上, Vue变量关联value属性的值
- v-model用在复选框时,需要注意什么?
- v-model的vue变量是:
- 非数组 - 关联的是checked属性
- 数组 - 关联的是value属性
- v-model的vue变量是:
- Vue变量初始值会不会影响表单的默认状态?
- 会影响,因为双向数据绑定 - 互相影响
25.Vue指令-v-model修饰符
- Vue针对v-model有哪些修饰符来提高我们编程效率?
- .number - 转成数值类型后再赋予给Vue数据变量
- .trim - 去除两边空格后把值赋予给Vue数据变量
- .lazy - 等表单失去焦点,才把值赋予给Vue数据变量
26.Vue指令-v-html
- v-html有什么作用?
- 可以设置标签显示的内容
- 和插值表达式区别是什么?
- 插值表达式把值当成普通字符串显示
- v-html把值当成标签进行解析显示
27.Vue指令-v-show和v-if问题
- vue如何控制标签显示/隐藏?
- v-show或v-if,给变量赋予true/false,显示/隐藏
- 区别是什么?
- v-show是用css方式显示/隐藏标签
- v-if直接从DOM树上添加/移除
- v-if可以配合v-else
28.Vue指令-v-for
- v-for如何循环列表?
- 先准备目标数据结构
- 可以遍历数组/对象/固定数字/字符串格
- 谁想循环就把v-for写谁身上
- v-for注意事项?
- 值变量和索引变量不能用到v-for范围以外
- v-for="(值变量, 索引变量) in Vue变量" - 一定要注意in两边必须有空