当前位置: 首页 > news >正文

静态网站用什么做最快百度网盘搜索引擎官方入口

静态网站用什么做最快,百度网盘搜索引擎官方入口,什么网站可以找试卷做,创建一个网站需要怎么做Vue自定义指令- v-loading封装 文章目录 Vue自定义指令- v-loading封装01-自定义指令自定义指令的两种注册语法: 02自定义指令的值03-自定义指令- v-loading指令封装 01-自定义指令 什么是自定义指令? 自定义指令:自己定义的指令&#xff0c…

Vue自定义指令- v-loading封装

文章目录

  • Vue自定义指令- v-loading封装
      • 01-自定义指令
          • 自定义指令的两种注册语法:
      • 02自定义指令的值
      • 03-自定义指令- v-loading指令封装

01-自定义指令


什么是自定义指令?

  • 自定义指令:自己定义的指令,可以封装一些dom操作,扩展额外功能。

1、例如:完成自动聚焦的功能:

自定义指令的两种注册语法:
  • 全局注册-语法:
// 全局注册指令
Vue.directive('focus',{// inserted会在 指令所在的元素,被插入到页面中的时候触发inserted (el) {// el 就是我们指令所绑定的元素el.focus()}
})
  • 局部注册-语法:
  // 2.局部注册指令directives: {// 指令名:指令配置项focus: {// el 是我么指令所绑定的元素inserted (el) {el.focus()}}}

根据使用场景:选择不同的注册方式。


02自定义指令的值

2、例如:实现一个color指令 - 传入不同的颜色,给标签设置文字颜色

语法

我们再绑定指令的时候,可以通过 等号 给我们指令绑定具体的参数。

v-指令名=“指令值”,绑定指令的值

<div v-color="color">我是内容</div>

通过 binding.value可以可以拿到指令值,指令值修改会 触发 update 函数

binding.value可以拿到color的值,当我们指令被修改后,会执行update函数

  <div class="app"><h1 v-color="color1">指令的值1</h1><h1 v-color="color2">指令的值2</h1></div><script>
export default {data () {return {color1: 'red',color2: 'green'}},// 注册自定义指令directives: {color: {// 1、inserted 元素被添加到页面时的逻辑inserted (el,binding) {// binding.value 就是指令的值el.style.color = binding.value},// 2、update 指令的值修改的时候触发,提供dom更新后的逻辑update (el, binding) {el.style.color = binding.value}}}
}
</script>

03-自定义指令- v-loading指令封装


分析 v-loading指令封装

  1. 本质 loading 效果就是一个蒙层,盖在了盒子上
  2. 数据请求中,开启loading状态,添加蒙层
  3. 数据请求完毕后,关闭loading装状态,移除蒙层。

实现:

  1. 准备一个 loading 类,通过伪元素定位,设置宽高,实现蒙层

  2. 开启关闭蒙层状态(添加移除蒙层),本质只需要添加移除类即可

  3. 结合自定义指令的语法进行封装


  <div class="box" v-loading="isLoading"><script>
// 安装axios =>  yarn add axios
import axios from 'axios'// 接口地址:http://hmajax.itheima.net/api/news
// 请求方式:get
export default {data () {return {list: [],isLoading: true}},// 定义局部指令directives: {loading: {inserted (el,binding) {// 指令触发后执行当前钩子  insertedbinding.value ? el.classList.add('loading') : el.classList.remove('loading')},update (el,binding) {// 指令值被修改执行当前钩子 updatebinding.value ? el.classList.add('loading') : el.classList.remove('loading')}}},async created () {// 1. 发送请求获取数据const res = await axios.get('http://hmajax.itheima.net/api/news')setTimeout(() => {// 2. 更新到 list 中,用于页面渲染 v-forthis.list = res.data.data// 数据响应后,改变蒙层状态this.isLoading = false}, 2000)}
}
</script><style>
.loading:before {content: '';position: absolute;left: 0;top: 0;width: 100%;height: 100%;background: #fff url('./loading.gif') no-repeat center;
}
</style>
http://www.dt0577.cn/news/7069.html

相关文章:

  • 网站怎样被百度收录江门关键词排名工具
  • 潍坊外贸建站百度seo排名技术必不可少
  • 北京画册设计公司seo专业论坛
  • WordPress不支持大数据seo网络优化前景怎么样
  • 广西城乡建设厅网站百度百科官网
  • 狗狗和人做网站网站排名优化公司哪家好
  • 在那些网站上做企业宣传好百度下载并安装
  • 成都网站建设龙兵seo外包公司多吗
  • 武汉做营销型网站推广百度收录网址
  • 有九类商标可以做网站名吗网站排名优化多少钱
  • 企销客搜索引擎的优化方法有哪些
  • 网站建设保密条款2024最火的十大新闻有哪些
  • 网站除了域名还要什么用河南整站关键词排名优化软件
  • seo深度优化公司seo职业培训学校
  • 杭州网站设计工作室查关键词排名软件
  • 学做网站是什么深圳网站推广公司
  • 商城购物网站有哪些模块seo案例分析100例
  • 网站设计案例方案网站优化 福州
  • 西海岸新区城市建设局网站淘宝代运营公司排名
  • 公司做企业网站的必要性成人短期培训能学什么
  • 做模具在哪个网站找工作qq营销
  • 秦皇岛网站开发哪家好百度网盘搜索引擎盘多多
  • 工作总结及工作计划seo网站技术培训
  • b2c购物网站系统线上推广宣传方式有哪些
  • wordpress抓取新闻快速排序优化
  • 在国外网站建设邯郸今日头条最新消息
  • 西宁专业做网站百度推广关键词优化
  • 外贸人自己搭建外贸网站wordpress数字化营销
  • wordpress获取所有标签重庆seo网站收录优化
  • 在线做网站怎么做如何做网页推广