Chrome Extentions TS 中使用 chrome 全局API

6 min read

你可以使用 @types/chrome 这个包来提供 chrome 的类型定义。你可以通过以下命令来安装这个包:

npm install --save-dev @types/chrome

如果你已经安装了 @types/chrome,但是你的编辑器还是无法识别 chrome 这个变量,那可能是因为你的 TypeScript 配置文件(tsconfig.json)中没有包含这个类型定义文件。你可以尝试在 tsconfig.json 的 "types" 字段中添加 "chrome":

{
  "compilerOptions": {
    "types": ["chrome"]
  }
}

如果你的项目并不是一个 Chrome 扩展程序,而只是一个常规的网页应用,那么你可能不希望在全局范围内引入 chrome 这个全局变量的类型定义。在这种情况下,你可以在使用 chrome 的文件的顶部添加以下这行注释,以在这个文件中引入 chrome 的类型定义:

/// <reference types="chrome" />

这将在这个文件中引入 chrome 的类型定义,而不会影响到其他文件。