【发布时间】:2021-10-19 03:08:31
【问题描述】:
我试过了,但出现“未定义要求”错误。我找不到这方面的信息,请问有人可以启发我的菜鸟吗?
【问题讨论】:
标签: google-chrome-extension npm
我试过了,但出现“未定义要求”错误。我找不到这方面的信息,请问有人可以启发我的菜鸟吗?
【问题讨论】:
标签: google-chrome-extension npm
这是可能的,但你必须小心。尝试 require() 一个包意味着该节点将尝试在您的文件系统中找到它的文件。 chrome 扩展只能访问您在清单中声明的文件,而不是您的文件系统。
要解决这个问题,请使用像 Webpack 这样的模块捆绑器,它会生成一个 javascript 文件,其中包含通过 require() 包含的所有包的所有代码。您必须为 chrome 扩展的每个组件生成一个单独的模块(例如,一个用于背景页面,一个用于内容脚本,一个用于弹出窗口)并在清单中声明每个生成的模块。
为避免尝试设置您的构建系统以使使用 require() 成为可能,我建议从 a boilerplate project 开始。你可以查看my extension 看看我是怎么做到的。
【讨论】:
不可能在 chrome 扩展中直接要求节点模块。但是,可以将节点应用程序和包捆绑到浏览器中以与您的扩展一起使用。更多信息请看这里:Is it possible to develop Google Chrome extensions using node.js?
【讨论】: