image.png

什么是vue

image.png

vue 的两个特性

image.png

vue 指令

image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png

image.png

过滤器

image.png

侦听器

image.png

image.png

image.png
image.png
image.png

计算属性

image.png
image.png

axios的基本使用

安装axios 终端 npm i axios -S
image.png
1、发起GET请求

  1. axios({
  2. method: 'GET',
  3. url: 'http://www.liulongbin.top:3006/api/getbooks',
  4. // URL 中查询参数
  5. params: {
  6. id: 1
  7. }
  8. }).then(function (result) {
  9. console.log(result)
  10. })

image.png

vue-cli

  1. npm install -g @vue/cli // 安装vue-cli包
  2. vue -V // 查看是否安装成功
  3. vue create hello-world // 创建一个项目 hello-world 为文件夹名称

image.png

2、vue 项目中 src 目录的构成

  1. assets // 文件夹: 存放项目中用到的静态资源文件, 例如: css 样式表、图片资源
  2. components // 文件夹: 程序员封装的、可复用的组件, 都要放到 components 目录下
  3. main.js // 是项目的入口文件. 整个项目的运行, 先要执行 main.js
  4. App.vue // 是项目的根组件

vue组件

使用组件的三大步骤
image.png
注册全局组件
image.png

有package.json 的文件下 直接用 npm i —legacy-peer-deps

删除node_modules文件夹
删除package-lock.json
重新执行npm i —legacy-peer-deps

  1. <script>
  2. // 默认导出, 这是固定写法
  3. export default {
  4. // data 数据源
  5. // 注意: vue 组件中的 data 不能像之前一样, 不能指向对象
  6. // 注意: 组件中的 data 必须是一个函数
  7. data() {
  8. // 这个 return 出去的 {} 中, 可以定义数据
  9. return {
  10. username: "zs",
  11. age: 20,
  12. };
  13. },
  14. // 当前组件中的 点击
  15. methods: {
  16. changeName() {
  17. // 在组件中, this 就表示当前组件的实例对象
  18. this.username = "哇哈哈";
  19. },
  20. },
  21. // 当前组件中的侦听器
  22. watch: {},
  23. // 当前组件中的计算属性
  24. computed: {},
  25. // 当前组件中的过滤器
  26. filters: {},
  27. };
  28. </script>

image.png
// 必填项校验
required:true,

image.png
lifecycle.png
image.png
image.png
image.png
image.png
vue 基础.xmind

ref 的DOM和组件

通过ref来调用DOM操作
image.png
image.png
image.png

动态组件

// component 标签是 vue 内置的, 作用:组件的占位符
// is 属性的值, 表示要渲染的组件名字

// 可以把内部的组件进行缓冲, 而不是销毁组件

  1. <keep-alive>
  2. <component :is="comName"></component>
  3. </keep-alive>
  4. data(){
  5. return{
  6. // comName 表示要展示的组件的名称
  7. comName:"Left",
  8. };
  9. },

image.png
image.png


组件声明 name 名称
image.png

插槽

image.png
image.png
v-slot : 的简写 是 #

  1. <slot name="content" msg="hello vue.js"></slot> // 子页面
  2. <template #content="scope"> // 根页面
  3. <div>
  4. <p>啊,大海,全是水</p>
  5. <p>啊,大海,全是水</p>
  6. <p>啊,大海,全是水</p>
  7. <p>{{ scope.msg }}</p>
  8. </div>
  9. </template>

只有 name 属性的为 “具名插槽”
在封装组件时, 为预留的 提供的属性对应的值, 这种用法, 叫做“作用域插槽”
在封装组件时, 为预留的 提供的解构赋值, 这种用法, 叫做“插槽的解构赋值”
image.png
image.png

自定义指令

私有自定义指令

  1. <p v-color>测试</p>

image.png
image.pngimage.png
image.png