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

如何做adsense网站优化网站seo策略

如何做adsense网站,优化网站seo策略,文山 网站建设 滇icp,手机网站客户端设计与实现文章目录 前言一、Hooks是什么?二、图片转换Base641.Hooks2.使用 三、监听元素宽高(自定义指令Hooks)1.Hooks2.使用 总结 前言 本文主要记录了vue3学习中自定义Hooks和vue2中Mixins的使用与案例。 一、Hooks是什么? Hooks用来处…

文章目录

  • 前言
  • 一、Hooks是什么?
  • 二、图片转换Base64
    • 1.Hooks
    • 2.使用
  • 三、监听元素宽高(自定义指令+Hooks)
    • 1.Hooks
    • 2.使用
  • 总结


前言

本文主要记录了vue3学习中自定义Hooks和vue2中Mixins的使用与案例。


一、Hooks是什么?

Hooks用来处理复用代码逻辑的一些封装,Hooks与Mixins不同点在于Hooks是函数
在vue2中是以Mixins形式将相同的逻辑抽离,各个组件只需要引入mixins,就能使用,mixins存在覆盖问题:
组件data、methods、filters会覆盖mixins中同名data、methods、filters

Mixins生命周期

使用VueUse库可以使用100多项用Hooks完成的功能

二、图片转换Base64

1.Hooks

代码如下:

type Options = {el:string
}
export default function (options:Options):Promise<{baseUrl:string}> {// @ts-ignorereturn new Promise((resolve)=>{onMounted(()=>{let img:HTMLImageElement = document.querySelector(options.el) as HTMLImageElementimg.onload = () =>{resolve({baseUrl:base64(img)})}})const base64 = (el:HTMLImageElement) =>{const canvas = document.createElement('canvas')const ctx = canvas.getContext('2d')canvas.width = el.widthcanvas.height = el.heightctx?.drawImage(el,0,0,canvas.width,canvas.height)return canvas.toDataURL('image/jpg')}})
}

2.使用

代码如下:

import useBase64 from '../../../../hooks/index'
useBase64({el: '#img'
}).then(res=>{console.log(res.baseUrl)
})

三、监听元素宽高(自定义指令+Hooks)

1.Hooks

这里要注意的是vue插件需要定义install方法,在app.use()挂载时会调用该方法

/*** interSectionObserver 主要监听元素是否在视口内* MutationObserver 主要监听子集的变化 以及 元素的增删改查* ResizeObserver 主要监听元素宽高的变化*/
// @ts-ignore
import type { APP } from 'vue'/*** 自定义Hooks监听元素宽高变化* @param el* @param callback*/
function useResize(el:HTMLElement,callback:Function) {let resize = new ResizeObserver((entries)=>{callback(entries[0].contentRect)})resize.observe(el)
}/*** 自定义指令* vue插件 必须要有install方法,在app.use()时会调用该方法* @param app*/
const install = (app:APP) => {app.directive('resize', {mounted(el,binding) {useResize(el,binding.value)}})
}
// 将install 挂载到useResize上的install上
useResize.install = install
export default useResize

2.使用

<script setup lang="ts">import {onMounted} from "vue";
import useResize from "../../../hooks/useResize";
// 自定义Hooks
onMounted(()=>{useResize(document.querySelector('.box') as HTMLElement,(e:any)=>{console.log('自定义Hooks',e)})
})
// 自定义指令
const aaa = (e)=>{console.log('自定义指令',e)
}
</script><template>
<div v-resize="aaa" class="box"></div>
</template><style scoped>
.box{overflow: hidden;border: 2px solid black;resize: both;width: 300px;height: 300px;
}
</style>

总结

本文主要记录了vue3学习中自定义Hooks和vue2中Mixins的使用与案例。

http://www.tj-hxxt.cn/news/60092.html

相关文章:

  • 厦门企业网站建设营销策略怎么写模板
  • 祖传做网站北京网站建设运营
  • 集团公司网站开发方案做推广的软件有哪些
  • 惠州外贸网站建设sem是什么的英文缩写
  • 怎么看网站用哪个系统做的营销培训课程ppt
  • 宝安公司网站制作哪家公司好上海外贸网站seo
  • 广告线上推广方式北京网站优化公司
  • 有哪些做的推文排版的网站百度服务中心人工客服电话
  • 免费直播app软件下载百度关键词优化有效果吗
  • 哪家网站设计好友链交易平台
  • 白酒营销网站最好用的手机优化软件
  • 怎么做网站赚钱放广告厦门百度广告开户
  • 成都找人做网站2024年重大新闻简短
  • 非凡免费建网站平台网站搜索排名
  • 冬奥会建设官方网站外贸seo推广公司
  • 专业网站建设怎么样网络营销策略方案
  • 网站建设立项ppt模板网络推广员岗位职责
  • 网站地图提交职业技能培训平台
  • 杭州的服装网站建设seo视频教程我要自学网
  • 个人网站可以做商城吗情感链接
  • 阿里云 做网站谷歌外贸网站
  • 做网站的公司都是小公司比优化更好的词是
  • 代办公司注册代理怎么做关键词优化排名
  • node mysql做动态网站高端网站建设
  • 网站定制开发前期要有一定的规划网络营销专业是学什么的
  • 营销伎巧seo管理软件
  • 淘宝这种网站怎么做的网络营销有哪些内容
  • 郑州建网站进入百度app
  • 株洲网站建设服务平台自助建站官网
  • ui设计网站建设是什么意思关键词优化流程