既然@ babel / polyfill已被弃用,如何使用cra-append-sw进行构建?

时间:2019-07-08 06:45:23

标签: service-worker create-react-app babel-polyfill

我正在尝试将功能添加到create-react-app提供的开箱即用的服务中。值得庆幸的是,cra-append-sw让我无需离开cra就可以做到这一点。

但是,在安装cra-append-sw时,npm会警告我@ babel / polyfill @ 7.4.4已被弃用(@ babel / polyfill被列为cra-append-sw依赖项):

As of Babel 7.4.0, this package has been deprecated in favor of directly including core-js/stable (to polyfill ECMAScript features) and regenerator-runtime/runtime (needed to use transpiled generator functions):

import "core-js/stable";
import "regenerator-runtime/runtime";

然后,当我尝试npm run build追加自定义服务工作者时,该构建会吐出一长条错误消息,其顶部是:

ERROR in multi ./custom-sw.js
Module not found: Error: Can't resolve './custom-sw.js' in '/Users/michaelmersiades/workspace/vanilla-cra'
resolve './custom-sw.js' in '/Users/--/workspace/vanilla-cra'
  using description file: /Users/--/workspace/vanilla-cra/package.json (relative path: .)
    Field 'browser' doesn't contain a valid alias configuration

并且custom-sw.js没有显示在构建文件夹中。

这个可以修复吗?如果是这样,怎么办?还是对于ira-append-sw好的人来说这是一个问题吗?

在此先感谢任何可以提供帮助的人。

1 个答案:

答案 0 :(得分:0)

愚蠢的错误。 custom-sw.js文件位于/ src内,但必须位于/(根文件夹)中。

将其移至/解决了问题。