Sun*_*ngh 2 mocking reactjs service-worker
我尝试使用 msw 进行本地开发并使用官方指南进行测试
但面临以下问题:
[MSW] Failed to register a Service Worker for scope ('http://localhost:8080/') with script ('http://localhost:8080/mockServiceWorker.js'): Service Worker script does not exist at the given path.
Did you forget to run "npx msw init <PUBLIC_DIR>"?
Learn more about creating the Service Worker script: https://mswjs.io/docs/cli/init
[1]: https://mswjs.io/docs/getting-started/integrate/browser
Run Code Online (Sandbox Code Playgroud)
我的文件夹结构:
正如错误消息所示,您尚未将 Service Worker ( mockServiceWorker.js) 脚本放入公共目录中。根据您的屏幕截图,您的公共目录很可能是./build。
执行此命令将工作脚本放置在您的公共目录中:
$ npx msw init ./build
Run Code Online (Sandbox Code Playgroud)
您应该能够通过以下 URL 访问正在运行的应用程序中的工作脚本:http://localhost:8080/mockServiceWorker.js。mockServiceWorker.js这应该返回要在您的应用程序中注册的文件的内容。
您需要使用您的文件夹运行命令public,而不是构建。您的公用文件夹是将内容复制到构建文件夹的文件夹。如果您将该文件放在构建文件夹中,它将不会进入您的源代码管理(如果您正确地没有提交构建文件)。
与 create-react-app 兼容的说明:
运行命令后
$ npx msw init ./public
Run Code Online (Sandbox Code Playgroud)
你需要运行yarn build然后你可以使用故事书。另外,不要忘记运行具有公共文件夹访问权限的 Storybook:
"storybook": "start-storybook -s ./public"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7274 次 |
| 最近记录: |