【发布时间】:2021-12-25 01:37:15
【问题描述】:
我正在使用create-react-app 4 和cra-template-pwa (source)
默认情况下,service-worker 似乎只用于生产构建:
export function register(config) {
if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) {
这对我来说是个问题,因为构建生产构建需要很长时间,因此我想在开发构建时注册服务工作者。
为了得到这个结果,我删除了检查 process.env.NODE_ENV === 'production' 和另一个 isLocalhost 检查。
现在,正如我所希望的那样,即使是调试版本也在尝试加载 www.example.com/service-worker.js。
现在的问题是,这个文件在src 里面。这是有道理的,因为它使用导入,如您所见here。但正因为如此,文件本身无法从网络浏览器访问,因此www.example.com/service-worker.js 肯定无法访问。
将文件复制到公共也不起作用
未捕获的语法错误:无法在模块外使用 import 语句
恐怕我还没有真正理解哪一部分属于JS,哪一部分属于NodeJS,哪一部分属于reactjs,哪一部分属于CRA。
所以我现在的问题是:
有没有办法获取“已翻译”service-worker.js 的“路径”(导入后,..)?
【问题讨论】:
标签: javascript reactjs node-modules create-react-app service-worker