Chrome插件开发(chrome-extension)
【干货】Chrome插件(扩展)开发全攻略(详解参考文章)
https://blog.csdn.net/weixin_33762321/article/details/85913723
以上介绍是chrome详细规则说明,如果想在项目中使用vue等插件,最好用框架做。
我是使用的vue脚手架搭建的项目,详细说下步骤和问题解决
1、vue 安装
参考网站:https://cn.vuejs.org/v2/guide/installation.html
# 最新稳定版 $ npm install vue
2、vue 启动,通过vue框架创建chrome插件项目
启动:vue ui
按步骤创建好项目后,添加插件,我使用的插件是:vue-cli-plugin-ui-chrome-extension
建议安装勾选内容
3、开发过程注意事项
3.1、使用ui项目组件,但是页面没有识别
使用每个ui组件,都需要做下导入
import {
Card,
Button,
Input,
Form,
FormItem
} from 'element-ui';
Vue.use(Card);
Vue.use(Button);
Vue.use(Input);
Vue.use(Form);
Vue.use(FormItem);
3.2、signalR 使用
直接安装微软官方的
命令:npm install @microsoft/signalr
import * as signalR from "@microsoft/signalr";
//建立连接this.connection = await new signalR.HubConnectionBuilder().withUrl(`socket url`).configureLogging(signalR.LogLevel.Warning).build();await this.connection.start();console.log("connected");//打印消息 //监控,消息触发var that = this;this.connection.on("SendMsg", msg => {console.log(msg);})
3.3、axios(url请求)
命令:npm i axios
import axios from 'axios';
var res = await axios.post(`url`, {msg:"msg",Method:"send"})
3.4、所有的开发标准需要按vue的开发标准开发,最终编译会成chrome要求的html
<a href="#" id="open_background" v-on:click="open_background">打开background</a>
4、配置文件参考
{"manifest_version": 2,// 清单文件的版本,这个必须写,而且必须是2"name": "chromemessage",// 插件的名称"description": "消息组件",// 插件描述"version": "0.0.1",// 插件的版本"icons": {// 图标,一般偷懒全部用一个尺寸的也没问题"16": "img/icon.png","48": "img/icon.png","128": "img/icon.png"},"background": {// 会一直常驻的后台JS或后台页面// 2种指定方式,如果指定JS,那么会自动生成一个背景页// "page": "background.html""scripts": ["background.js"]},浏览器右上角图标设置,browser_action、page_action、app必须三选一"browser_action": {"default_title": "这是个消息组件","default_popup": "popup.html","default_icon": "img/icon.png"},// 需要直接注入页面的JS"content_scripts": [{//"matches": ["http://*/*", "https://*/*"],// "<all_urls>" 表示匹配所有地址"matches": ["*://*.baidu.com/*"],"css": [// JS的注入可以随便一点,但是CSS的注意就要千万小心了,因为一不小心就可能影响全局样式"css/content.css"],"js": [// 多个JS按顺序注入"js/content.js",// "js/jquery-1.8.3.js","content-script.js"],// 代码注入的时间,可选值: "document_start", "document_end", or "document_idle",最后一个表示页面空闲时,默认document_idle"run_at": "document_start"}],// 权限申请"permissions": ["contextMenus",// 右键菜单"tabs",// 标签"notifications",// 通知"webRequest", // web请求"webRequestBlocking",// 阻塞式web请求"storage",// 插件本地存储"http://*/*",// 可以通过executeScript或者insertCSS访问的网站"https://*/*"// 可以通过executeScript或者insertCSS访问的网站],// 普通页面能够直接访问的插件资源列表,如果不设置是无法直接访问的"web_accessible_resources": ["inject.js","fonts/*"],// 插件主页,这个很重要,不要浪费了这个免费广告位"homepage_url": "https://www.baidu.com","options_page": "options.html","options_ui":{"page": "options.html","chrome_style": true},// 覆盖浏览器默认页面"chrome_url_overrides":{// 覆盖浏览器默认的新标签页"newtab": "customertab.html"},// Chrome40以前的插件配置页写法"options_page": "options.html",// Chrome40以后的插件配置页写法,如果2个都写,新版Chrome只认后面这一个"options_ui":{"page": "options.html",// 添加一些默认的样式,推荐使用"chrome_style": true},// 向地址栏注册一个关键字以提供搜索建议,只能设置一个关键字"omnibox": { "keyword" : "go" },"default_locale": "zh_CN","content_security_policy": "script-src 'self' 'unsafe-eval'; object-src 'self'"
}
5、vue.config.js(插件发布配置文件)
默认系统只打包,popup.html.options.html 两个文件
如果需要生成其他html文件,需要自己配置
const chromeName = [
"popup",
"options",
"background",
"customertab",
];
其他的文件生成规则,可以参考此文件内容。
Chrome插件开发(chrome-extension)相关推荐
- chrome 插件开发各种功能demo_Chrome 插件开发全攻略
Chrome 浏览器相信大家都用得比较多,有很多的优点,比如简洁.强大的开发者工具等,但是更让大家映像深刻的是有各种各样有趣.有用的插件,今天要给大家推荐的开源项目是 Chrome 插件开发全攻略,你 ...
- vue.js 初体验— Chrome 插件开发实录
欢迎大家关注腾讯云技术社区-博客园官方主页,我们将持续在博客园为大家推荐技术精品文章哦~ 作者:陈纬杰 背景 对于经常和动画开发打交道的开发者对于Animate.css这个动画库不会陌生,它把一些常见 ...
- Chrome 插件开发-右键菜单开发实战演示,浏览器页面右键菜单选项设置,插件右键菜单点击插件名跳转主页设置
Chrome 插件开发 - 菜单选项 浏览器页面右键菜单选项设置 ① 核心代码演示 ② 效果展示 ③ 详细参数文档 插件右键菜单点击插件名跳转主页设置 ① 核心代码演示 ② 演示效果图 浏览器页面右键 ...
- Chrome 插件开发与本地程序交互流程
Chrome 插件开发与本地程序交互流程 一. 将本地程序写入注册表 可以采用bat的方式写入注册表 REG ADD "HKCU\Software\Google\Chrome\NativeM ...
- 十分钟带你入门Chrome插件开发
一.简述 我们所说的chrome插件一般都是指chrome扩展程序(Chrome Extension).chrome插件是一个用Web技术开发.用来增强浏览器功能的软件,它其实就是一个由HTML.CS ...
- Chrome 插件开发小记
文章目录 前言 manifest.json 常用配置项 常用API 脚本注入 网站与插件通信 网站端 插件端 打包 .crx QA 其他参考链接 前言 群里闲逛,看见有人发了个图,感觉还挺有意思,抽空 ...
- 西安天气html5插件,Chrome 插件开发——本地天气
经常在Chrome应用商店下载扩展程序也就是插件,有时候在想可不可以自己也开发一个插件用用呢?本文就是在这样的背景下产生的,以一个生活必需的简单获取天气的插件作为开发演示,下面就开始我们的Chrome ...
- Chrome插件开发实例---刷论坛在线时间小程序
前记: 由于近日注册了某个技术论坛,其论坛要求转为正式会员必须50积分购买邀请号,回答官方预留的题目可以获得30积分,每日在线一小时可以获得1积分上限为5积分.本人回答了官方题目获得30积分,之后就只 ...
- chrome插件开发入门教程
点击上方蓝字"优派编程"选择"加为星标",第一时间关注原创干货 原文地址 http://wp.fang1688.cn/study/539.html 这次我在ch ...
- chrome插件开发时跨域问题解决方案
这是一个没有套路的前端博主,热衷各种前端向的骚操作,经常想到哪就写到哪,如果有感兴趣的技术和前端效果可以留言-博主看到后会去代替大家踩坑的-接下来的几篇都是uni-app的小实战,有助于我们更好的去学 ...
最新文章
- Unity3d5.0 新UI之2048
- cisco *** 案例2
- 阿里云、Amazon、Google云数据库方案架构与技术分析
- 北邮OJ 2016网预 - Saber's Conjecture
- c++ 数组 结构体
- SAP Spartacus 的 Banner Component 请求
- 使用Cordova将您的前端JavaScript应用打包成手机原生应用
- [react] React中怎么检验props?
- SDUT 2766 小明传奇2
- linux端口接收中文乱码,linux中显示中文乱码如何解决
- python为什么那么多人用_为什么那么多人在学Python?
- Caused by: java.lang.IllegalArgumentException: Result Maps collection does not contain value for...
- 计算机专业必装软件mac,MAC电脑可运行的常用软件有哪些?
- 阿里云认证(ACA/ACP/ACE)的分类以及官网价格
- GZHU - 1523 疯狂钻石 (完全背包)
- go import几种用法
- 前端社区的恶趣味之Vanilla JS
- 【第三课】UAV倾斜摄影测量三维建模软件
- vs2013 番茄助手Visual AssistX插件的安装与使用
- 办公室养龟有什么讲究,办公室养龟风水