结合使用Chrome存储API和create-react-app构建

Eva*_*van 1 javascript google-chrome-extension create-react-app

我正在创建一个Chrome扩展程序,并使用create-react-app引导了该项目。

一般问题:

我想chrome.storage在我的应用程序中访问API

具体问题:

我希望能够在我的react应用程序中使用chrome.storage API来存储一些设置,因此我在src目录中创建了一个脚本,该脚本尝试调用chrome.storage.sync.set()而我得到了 'chrome' is not defined no-undef。我认为这是因为我需要在清单中包含进行此调用的脚本。问题是我无法src在清单中包含该脚本,因为在create-react-app构建我的项目之后,该脚本src会缩小,文件结构也会全部更改。

另一个问题是create-react-app强制执行了我仅从中导入src但我需要从中导入数据的问题public,因此我不能仅通过从中导入函数来进行chrome API调用public。我知道create-react-app上有弹出功能,但我想维护create-react-app给我的构建功能。

如何在从src目录访问chrome.storage API的同时维护create-react-app的构建功能?

Sid*_*ney 5

该错误('chrome is not defined no-undef')看起来像棉绒错误;附带的短绒毛绒create-react-app认为chrome未定义,因为您的代码从未定义过它。对于Linux扩展程序,linter鲜为人知,它是一个全局变量,因此不必定义它。

尝试将/* global chrome */使用该chrome变量的文件添加到文件的顶部。