我正在开发Chrome扩展程序(页面操作),并且遇到了特定问题。
这是我的扩展流程。该扩展程序大致将在当前选项卡中查找数据,并根据该内容在弹出窗口中显示相关内容。
content.js
它在特定的URL(如matches
数组中定义)上运行,并通过向background.js
发送一条消息以显示扩展名来打开页面操作扩展。它还设置为将带有数据的消息从当前选项卡发送到background.js
background.js
如上所述,content.js
在从background.js
接收特定数据后,将调用后端api来获取相关数据。随后,该数据将以消息形式发送,预计将显示popup.js
。
popup.js
此设置用于侦听来自后台的事件,并使用数据发送消息使用{{1}将一个或多个<li>
项注入到<ul>
中定义的popup.html
元素中}。
我面临的挑战是,当我单击弹出窗口时,看不到插入的列表项。但是,在单击弹出窗口(页面加载后)之后保持其打开状态,并随后重新加载页面时,我可以看到已插入列表项。我的要求是让弹出页面在后台显示邮件中的列表项并保留它。当用户单击扩展程序图标以打开弹出窗口时,我应该能够看到它。
我做错了什么?