怎么制作网站发布,网页设计与网站开发的总结,长春网站建设机构,摄影网站网页设计(创作不易#xff0c;感谢有你#xff0c;你的支持#xff0c;就是我前行的最大动力#xff0c;如果看完对你有帮助#xff0c;请留下您的足迹#xff09; 目录
自定义指令
基本语法 (全局局部注册)
全局注册
局部注册
指令的值
v-loading 指令封装
插槽 …(创作不易感谢有你你的支持就是我前行的最大动力如果看完对你有帮助请留下您的足迹 目录
自定义指令
基本语法 (全局局部注册)
全局注册
局部注册
指令的值
v-loading 指令封装
插槽
默认插槽
后备内容默认值
具名插槽
作用域插槽
路由入门
单页应用程序: SPA - Single Page Application
路由的介绍
路由的基本使用
VueRouter 的 介绍
VueRouter 的 使用 (5 2)
5个基础步骤 (固定)
2 个核心步骤 自定义指令
基本语法 (全局局部注册) 自定义指令自己定义的指令, 可以 封装一些 dom 操作 扩展额外功能 全局注册 //全局注册指令
Vue.directive(focus,{//inserted 会在指令所在的元素被插入到页面中时触发inserted(el){//el就是指令所绑定的元素el.focus()}
}) div idapph1自定义指令/h1input v-focus refinp typetext/div 网页显示为 局部注册
templatediv idapph1自定义指令/h1input v-focus refinp typetext/div
/templatescriptexport default {directives:{focus:{inserted(el){el.focus()}}}
}
/script
指令的值 需求实现一个 color 指令 - 传入不同的颜色, 给标签设置文字颜色 语法在绑定指令时可以通过“等号”的形式为指令 绑定 具体的参数值 通过 binding.value 可以拿到指令值指令值修改会 触发 update 函数 。 templatediv idapph1 v-colorcolor1自定义指令1/h1h1 v-colorcolor2自定义指令2/h1/div
/templatescript
export default {data(){return{color1:red,color2:green}},directives:{color:{//1.inserted提供的是元素被添加到页面中时的逻辑inserted(el,binding){el.style.colorbinding.value},//2.update 指令的值修改的时候触发提供值变化后dom更新的逻辑update(el ,binding){el.style.colorbinding.value}}}
}
/scriptstyle/style网页显示为 v-loading 指令封装 场景实际开发过程中发送 请求需要时间 在请求的数据未回来时页面会处于 空白状态 用户体验不好 需求封装一个 v-loading 指令实现加载中的效果 分析 1. 本质 loading 效果就是一个蒙层盖在了盒子上 2. 数据请求中开启loading状态添加蒙层 3. 数据请求完毕关闭loading状态移除蒙层 实现 1. 准备一个 loading 类通过伪元素定位设置宽高实现蒙层 2. 开启关闭 loading 状态添加移除蒙层本质只需要添加移除类即可 3. 结合自定义指令的语法进行封装复用 script
// 安装axios yarn add axios
import axios from axios// 接口地址http://hmajax.itheima.net/api/news
// 请求方式get
export default {data () {return {list: [],isLoading: true,isLoading2: true}},async created () {// 1. 发送请求获取数据const res await axios.get(http://hmajax.itheima.net/api/news)setTimeout(() {// 2. 更新到 list 中用于页面渲染 v-forthis.list res.data.datathis.isLoading false}, 2000)},directives: {loading: {inserted (el, binding) {binding.value ? el.classList.add(loading) : el.classList.remove(loading)},update (el, binding) {binding.value ? el.classList.add(loading) : el.classList.remove(loading)}}}
}
/script
插槽
默认插槽 插槽基本语法 1. 组件内需要定制的结构部分改用slot/slot占位 2. 使用组件时, MyDialog/MyDialog标签内部, 传入结构替换slot 后备内容默认值 插槽后备内容封装组件时可以为预留的 slot 插槽提供 后备内容 默认内容。 语法: 在 slot 标签内放置内容, 作为默认显示内容 效果: 外部使用组件时不传东西则slot会显示后备内容 外部使用组件时传东西了则slot整体会被换掉 具名插槽 需求一个组件内有多处结构需要外部传入标签进行定制 默认插槽一个的定制位置 具名插槽语法: 3. v-slot:插槽名 可以简化成 #插槽名 作用域插槽 作用域插槽: 定义 slot 插槽的同时, 是可以 传值 的。给 插槽 上可以 绑定数据 将来 使用组件时可以用 。 场景封装表格组件 1. 父传子动态渲染表格内容 2. 利用默认插槽定制操作列 3. 删除或查看都需要用到 当前项的 id 属于 组件内部的数据 通过 作用域插槽 传值绑定进而使用 基本使用步骤 1. 给 slot 标签, 以 添加属性的方式传值 2. 所有添加的属性, 都会被收集到一个对象中 3. 在template中, 通过 #插槽名 obj 接收默认插槽名为 default 路由入门
单页应用程序: SPA - Single Page Application 单页面应用(SPA): 所有功能在 一个html页面 上实现 路由的介绍
生活中的路由设备和ip的映射关系 Vue中路由 路径 和 组件 的 映射 关系 路由的基本使用
VueRouter 的 介绍 目标认识插件 VueRouter掌握 VueRouter 的基本使用步骤 作用 修改 地址栏路径时 切换显示 匹配的 组件 说明Vue 官方的一个路由插件是一个第三方包 官网 https://v3.router.vuejs.org/zh/ VueRouter 的 使用 (5 2)
5个基础步骤 (固定) ① 下载 下载 VueRouter 模块到当前工程版本3.6.5 ② 引入 ③ 安装注册 ④ 创建路由对象 ⑤ 注入将路由对象注入到new Vue实例中建立关联 2 个核心步骤 ① 创建需要的组件 (views目录)配置路由规则 Find.vue My.vue Friend.vue ② 配置导航配置路由出口(路径匹配的组件显示的位置)