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

跨境网站开发公司网络培训内容

跨境网站开发公司,网络培训内容,wordpress 跨域请求,使用angular2框架做的网站本项目使用Vite5 Vue3进行构建。 要使用vite工程构建浏览器插件,无非就是要实现popup页面和options页面。这就需要在项目中用到多入口打包(生成多个html文件)。 实现思路: 通过配置vite工程,使得项目打包后有两个h…

本项目使用Vite5 + Vue3进行构建。

要使用vite工程构建浏览器插件,无非就是要实现popup页面和options页面。这就需要在项目中用到多入口打包(生成多个html文件)。

实现思路:

  1. 通过配置vite工程,使得项目打包后有两个html文件。
  2. 同时打包入口打包background.js。
  3. 在manifest.json文件中配置popup、options、background等内容。
  4. 将项目中的manifest.json文件打包至dist目录下。

第一步、创建Vue3项目并调整目录结构

npm create vue@latest

通过此命令创建项目,创建后调整项目目录结构,由下图所示:
在这里插入图片描述
项目根目录的index.html打包后配置为popup,options.html配置为options。
将manifest.json放在src目录下,当然也可以放在public目录下(打包时vite自动将静态资源打包至dist目录下)。放在src目录下更符合个人的开发模式。

第二步、编写index.html和options.html

由于index.html打包后配置为popup页面,所以应该这样写:

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><link rel="icon" href="/favicon.ico"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Vite App</title></head><body><div id="app"></div><!--    引入popup的入口ts--><script type="module" src="src/popup/main.ts"></script></body>
</html>

同样options.html应引入src/options/main.ts

第三步、编写popup/main.ts和options/main.ts

两者的内容基本相同:

import '../assets/main.css'import { createApp } from 'vue'
import elementPlus from 'element-plus'
import 'element-plus/dist/index.css'
// popup页面引入Popup组件,options页面引入Options组件
import Popup from './Popup.vue'const app = createApp(Popup)
app.use(elementPlus)
app.mount('#app')

第四步、编写vite配置文件

此文件主要实现两部分内容,其他实现读者可自行添加。

  1. 将src目录下的manifest.json打包构建时移到dist目录下。
  2. 配置多入口文件。
import { fileURLToPath, URL } from 'node:url'import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import { viteStaticCopy } from 'vite-plugin-static-copy'
import { resolve } from 'path'// https://vitejs.dev/config/
export default defineConfig({plugins: [vue(),viteStaticCopy({targets: [{ src: 'src/*.json', dest: './' },]})],build: {rollupOptions: {input: {index: resolve(__dirname, 'index.html'),options: resolve(__dirname, 'options.html'),background: resolve(__dirname, 'src/background.ts'),},output: {entryFileNames: `[name].js`,}},outDir: 'dist',},resolve: {alias: {'@': fileURLToPath(new URL('./src', import.meta.url))}}
})

第五步、编写manifest.json文件

{"name": "xxx","version": "1.0","description": "xxx","homepage_url": "https://xxx.com","manifest_version": 3,"icons": {"16": "logo.png","48": "logo.png","64": "logo.png","128": "logo.png"},"commands": {"reload_extension": {"suggested_key": {"default": "Ctrl+Shift+K","mac": "Command+Shift+K"},"global": true,"description": "Toggle My Extension"}},"action": {"default_icon": "logo.png","default_popup": "index.html"},"options_page": "options.html","background": {"service_worker": "background.js","type": "module"},"permissions": ["management","scripting","notifications","contextMenus","webRequest","storage","tabs","activeTab","nativeMessaging"]
}

通过以上的几个步骤,即可实现浏览器插件使用vue项目开发,同时支持popup页面和options页面,以及background.js。
在这里插入图片描述

在这里插入图片描述

http://www.yayakq.cn/news/479105/

相关文章:

  • 有没有外包活的网站微信建公众号怎么建
  • 茶叶红酒网站建设旅游网站建设服务对象
  • 南山网站建设哪家好网软志成免费部队网站源码下载
  • 个人网站的作用赣州新闻联播今天回放
  • 长沙长沙建设网站网页添加兼容性站点
  • 全网vip视频网站怎么做网页设计作业网站素材和效果图
  • 网站开发合同范本自适应手机网站开发
  • 用discuz做商城网站长沙征帆网站建设
  • 网站开发招聘最新消息网站视频下载到手机怎么做
  • 商城网站建设套餐报价青海旭云网络做网站需要多少钱
  • 建设银行租房网站湖北2023北京又开始核酸了吗今天
  • 长沙建网站企业济南抖音推广公司
  • 网站制作类型免费搭建视频网站
  • 网站301跳转效果企业年金怎么查询个人账户余额
  • 骨干专业建设网站徐州旅游的网站建设
  • 贵阳市城乡建设部网站企业网站设计代码
  • 永久免费自动建站网站建设新闻稿
  • 昆山网站优化wordpress如何修改栏目的模板
  • 怎么看网站室哪做的wordpress 去掉作者信息
  • 建设网站的建设费用包括哪些内容wordpress会员设置有效期
  • 北京谁会做网站开发网站建设售前说明书
  • 企业自己做网站方法网站 拉新
  • 凉山建设机械网站wordpress 去除表格
  • 微信公众号优惠劵网站怎么做的新品发布会ppt参考
  • 建立内部网站做谷歌推广比较好的公司
  • 深圳网站建设黄浦网络没有备案的交易网站
  • 网站建设中 显示 虚拟机刚做网站做多用户还是单用户
  • 外国人做汉字网站郑州seo培训
  • 个人建网站首选什么域名好雪玫瑰制作教程来了
  • 房产中介网站模板wordpress软件下载源码