PWA - 为什么该用,又为什么不用?感谢阅读,我是 Tharun Shiv,又名开发者 Tharun。

2025-05-24

PWA——为什么应该使用它和不使用它?

感谢您的阅读,我是 Tharun Shiv,又名开发者 Tharun

在当今的科技世界中,PWA 是目前正在蓬勃发展的技术之一。它由谷歌于 2015 年推出,自那时起,许多网站都采用了这项技术。通过这项技术取得的成果也令人惊叹。

我在说什么?

PWA 是渐进式 Web 应用 (Progressive Web Apps)的缩写。PWA 是一款 Web 应用,它可以在手机上以常规应用的形式显示(独立于平台),也可以像互联网上常规的响应式网站一样运行。它就像构建一个普通的网站一样,使用与你相同的技术,但又赋予了渐进式 Web 应用的额外功能和优势。它轻量、快速且安全。

它使用了什么额外的东西?

考虑到您已设置了响应式布局并兼容大多数浏览器,您可以像往常一样构建网站。它主要由 JavaScript 组成,并使用 Service Worker,其中 PWA 的服务器保存在用户的 Web 浏览器中,并会不时地加载新的 feed。这是 PWA 速度快的主要原因。因此,这些 Service Worker 负责处理我们将在下面讨论的功能。

构建 PWA 的优势:

1. 响应式布局
是的,你必须建立一个响应式网站。这肯定会吸引大量移动用户访问你的网站。如今,大部分市场都来自移动用户。所以你得检查一下。

2. 离线模式可用
哦,是的。一旦您在浏览器上使用 PWA 网站,该网站的缓存将自动保存在您的网络浏览器中。这意味着您以后可以轻松地在离线模式下查看网页。

3. 添加到主屏幕
打开 PWA 网站后,系统会提示您将其添加到主屏幕。这不仅方便用户操作,还能增加网站流量。

4. 像移动应用程序一样运行
你没听错,从那时起,当你打开 PWA 时,它就会像移动应用程序一样运行。打开时不会显示 URL 栏和其他 Tab 选项。它会安装在手机上(不会对手机的硬件和软件进行有害访问)。

5. 推送通知
即使网站关闭,也能向用户手机发送通知。你能做到吗?没错,完全可以。

6. 内存占用非常小,
我故意这么用。想象一下,一个 10MB 的 Play Store 应用在你的手机上以 250kb 的大小运行。我是认真的。

7. 跨平台
开发一个兼容 PWA 的 Web 应用,并在任何支持 Chrome 浏览器的手机和任何有浏览器的桌面上使用。太棒了!太棒了!太棒了!


每个硬币都有其反面

缺点

1. 推送通知有一个陷阱
要享受推送通知和及时构建,网站需要使用安全的 TL 连接。

2. 初学者入门不易
如果你是一名开发者,并且想要开发 PWA,那么你必须具备 HTML、CSS、JavaScript、ES6 等知识,并对过程中可能遇到的相关技术有基本的了解。虽然有一些简单的入门捷径,(关于这部分,留待另一篇博文再说)

3. 没有下载商店
您无法在 Play Store 或 App Store 直接拥有 pwa。

4. 无法轻松修改启动画面
打开 PWA 时出现的启动画面无法开箱即用地进行自定义。

还要注意,您的网站必须通过httpsSSL 认证的连接来提供服务。


结论

  • PWA 永远是一项伟大的技术。它的旅程才刚刚开始,还有很长的路要走。
  • 现在,它成为一种比原生应用更便宜的选择,在原生应用方面,您需要一个具有最少动画和原生应用支持的应用。
  • 新的发明即将问世。在此之前,请努力学习 PWA 的相关知识。

例子

我最近的 PWA:https://bit.ly/stick-it-notes
我会在另一个帖子中向大家介绍如何在不编写任何 PWA 部分代码的情况下构建它

想学习 JavaScript 吗?

我找到了一个绝佳的学习平台,您可以在这里学习、提问,甚至完成课程后还能获得证书。点击查看 Udemy 上的这门课程:JavaScript Modern ES6 - 2020 - 完整课程 - Udemy。前几个视频在我的 YouTube 频道上免费提供。您可以在这里试听:Developer Tharun - YouTube - JavaScript 播放列表感谢您的阅读!

您知道使用生成器函数的 4 种方法吗?

由 Tharun Shiv 撰写,原文链接:https://tharunshiv.com

作者:

感谢您的阅读,我是 Tharun Shiv,又名开发者 Tharun

塔伦·希夫

[已删除用户] 图片

[已删除用户]

文章来源:https://dev.to/developertharun/pwa-why-should-you-use-it-and-not-use-it-447
PREV
除了 console.log() 之外,还有其他方法可以在 JavaScript 中使用控制台
NEXT
Dev.to 社区推荐的 21 款最佳生产力工具 感谢您的阅读,我是 Tharun Shiv,又名开发者 Tharun