制作谷歌插件 popup background content_scripts通信之间的问题

公司最近有需求
就是运营人员输入自己的账号和密码 然后获取所属的店铺的账号和密码
自动登录亚马逊 所以需要一个浏览器插件帮助运营人员

其实一开始我查资料 了解了基础的东西
但是我实在分不清楚popup.html background.js 还有content_scripts之间的关系
特别是这个三个之间如何通信的。

谷歌插件api文档我是看了的 但是奈何英文和众多的api挡住了我
完全摸不到头脑 所以菜鸡的我只好翻阅各种大佬的资料
所幸在B站找到了大佬的视频教学 下方放入大佬的视频

大佬的教学视频
(ps:有基本基础的可以直接跳到第5课)

看了视频大概了解到
popup.html 这是弹窗页面 你如果想输入一些指令,或者操作一些指令 这就是必须的
background.js 这基本上是用来处理逻辑 请求接口 返回数据 这是重中之重
content_scripts里面的js 这是用来获取浏览器你所在页面的一些东西dom元素啊 等等

例如我所需要给公司完成的需求是这样的
popup.html弹窗页面现在需要一个提交一个表单 然后来获得账号密码来自动填写浏览器上亚马逊页面的登陆表单。
逻辑是这样的:popup.html通过点击提交按钮来触犯点击事件 并告诉background.js 我已经点击了
制作谷歌插件 popup background content_scripts通信之间的问题
background.js 通过监听事件 表示我已经搜到了你提交的表单信息 已经开始请求接口了 并返回一个我已经成功接收到消息的提示给popup.html
制作谷歌插件 popup background content_scripts通信之间的问题
然后content.js 等亚马逊登陆界面加载好同样也发生一个请求给background.js (其实这个不分顺序 有可能是content.js先加载 因为浏览器页面加载好 你才好操作popup 这里只是为了方便叙述 )表示我已经获得页面的数据了 我需要数据填充
制作谷歌插件 popup background content_scripts通信之间的问题
同样的background.js 通过监听事件 表示已经知道浏览器页面的数据已经有了 然后根据popup给的信息作为参数开始请求接口 然后返回数据给content.js
制作谷歌插件 popup background content_scripts通信之间的问题

最终content.js通过bg.js传递过来的数据填充亚马逊登陆表单。

以上,就是大概我所要做的需求思想,有时间我回来完事一下。
大佬的视频看完,其实完全可以做个小插件自己使用 包括爬取啊 翻译啊 都可以。