自己开发谷歌浏览器插件-问题集锦

啥也不说了先来吐槽一下自己写一个播放器插件的问题,这些问题真的是很坑,花了我大量的时间,下面就总结一下开发中遇到的总总问题,有些忘记了是什么错了但我还是尽可能写下来,已备以后遇到有参考或者方便大家参看

1.vue的使用,疯狂报错

在开发谷歌浏览器插件时候,使用的版本不能是普通的vue,pia的把路径扔上去结果会发现不是#app not define就是给html绑定的事件循环一堆错;**必须使用vuejs1.x版本或则webpack+那个啥(不记得了,网上找到)**打包的可以直接使用vue最新的版本(本人直接用vue1.0.x,不用再打包啥的),参考连接:https://segmentfault.com/q/1010000009571202,其他就自行上网找.
vue1.0.x csp版本直接下载:https://files.cnblogs.com/files/RorinL/vue.js(我博客园的博客哈^ _ ^)

2.获取所有元素或则获取单个元素.

在vue1.x版本中,没有mounted等生命周期钩子,但是有功能相同的,参考:https://www.cnblogs.com/wuxianqiang/archive/2017/07/25/7231976.html,而且想要在ready()生命周期中获取某个类所有元素的长度或者遍历,需要使用定时器:
在这里插入图片描述
获取data-*(元素的data-xxx,需要这样写allplay[i].attributes[0].ownerElement.dataset.mid
获取元素: allplay[i].attributes[0].ownerElement,例如设置backgroundColor,需要这样:allplay[i].attributes[0].ownerElement.style.backgroundColor,不是allplay[i].style.backgroundColor,这样写不生效。

3.backgroundjs与popupjs的通信

直接贴图
3-1:发送消息给backgroundjs
在这里插入图片描述
3-2:backgroundjs接受消息
在这里插入图片描述

4.Unchecked runtime.lastError: The message port closed before a response was received

翻译:未检查运行时.lastError:消息端口在收到响应之前关闭
在 sender(背景页)收到 tab 页的响应消息之前,sendResponse 的消息端口就已经关闭了,从而导致 sender(背景页)出现未检查的运行时错误。更详细参考https://blog.csdn.net/lamp_yang_3533/article/details/100174074
解决办法:
在这里插入图片描述
注意这里的callb,这个是callback,它必须要有
例如popup发送消息给background
在这里插入图片描述
backgroundjsj接受,并响应
在这里插入图片描述
我的个人网站

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值