npm 包 lighthouse-pwa 使用教程

npm 包 lighthouse-pwa 使用教程

作为一名前端开发工程师,我们必须时刻保持着对 web 应用性能的关注。我们好不容易写完一份代码,仅仅上线就令人激动。但是更难的是确保我们写的代码也跑的正确,问题相关就尤其用工具来发现。

这时候,一个自动化的工具就诞生了,它的名字就是 lighthouse。而 lighthouse-pwa 就是 lighthouse 的一个 npm 包。它在测量现代 web 应用的性能指标方面很有用,特别是在 PWA 方面,作为一款升级 PWA 的很好的工具。

在本文中,我们将学习如何使用 lighthouse-pwa,创建和维护一个高质量的 PWA。

什么是 lighthouse-pwa

lighthouse-pwa 是一个基于 lighthouse 基础上的核心扩展,np包,封装并提供了关于PWA 的统计和维护工具。 通俗地说,像以前版本的 Lighthouse 一样, Lighthouse-PWA 也可以验证许多对性能有影响的问题,而且特别是对于PWA来说。它透过 Chrome 浏览器自动化工具链,可使用您的服务端资产,分析您的网站,并提供有关性能的最佳建议。

安装 lighthouse-pwa

作为 npm 包,安装 lighthouse-pwa 很简单。您只需打开终端并运行以下命令即可:

--- ------- -- --------------

我们使用全局安装的方式,因为我们希望能够在整个系统中使用此工具。这个命令将安装 lighthouse-pwa 到全局 npm 模块中。现在,您可以运行 lighthouse-pwa 命令并尝试基本的验证。请打开终端并运行以下命令:

-------------- -------------------

现在,这个命令应该开始分析您提供的 URL,并提供一份详细的报告,其中包含当前网站的性能指标。

使用 lighthouse-pwa 进行 PWA 评估

由于 lighthouse-pwa 的核心扩展就是在 PWA 方面,使用 lighthouse-pwa 进行 PWA 评估就很简单。您只需将 URL 与 PWA 选项组合在一起:

-------------- ------------------- -----

现在,这个命令应该生产出一个和 PWA 相关的报告。这个报告将显示与 PWA 相关的所有必要数据,包括manifest文件,Service Workers等。它还将包含与 PWA 相关的最佳实践,并为您的设计和开发提供建议。 lighthouse-pwa 报告的输出类似于以下内容:

在这个图中,您可以看到关于 PWA 的各种指标。Lighthouse-pwa 报告包含以下主要信息:

  • 提供 HTTPS:该指标是为 PWA 必须使用 HTTPS 协议而设计的。
  • 网站可达:该指标是为 PWA 中需要服务工作器而设计的。
  • Web App Manifest:该指标是鉴别 web app manifest 文件是否存在。
  • 所有内容都已缓存:该指标是为 PWA 中需要服务工作器而设计的。
  • 交互:对于 PWA 输入和操作的反应时间。
  • 降低启动耗时:该指标旨在减少首次加载时间和首次渲染。

此报告的重要信息用于优化您的 PWA 的性能和体验。

在自动化工作流中添加 lighthouse-pwa

您可以将 lighthouse-pwa 添加到您的自动化工作流程中,以确保您在设计之前就可以获得与 PWA 验证相关的实时反馈。

例如,在 lighthouse-pwa 中包含了一些 shell 命令,它们可以轻松地添加到 gulp 或 grunt 任务中。这个命令就是下面的例子:

-------------- - --------------- -
    -------------------------------- ---------- -
        --- ---- - -------------
        --- ---- - --------- -----------

        --- ----- - -
            ------------------------
            ---------------------------------
        --

        --- -----    - -----------------
        --- -----    - -------------------------------
        --- ------   - ------------------

        --- --------------- - -------------- ----- -
            ------ ------------------ -
                --- ----- - ----------------------- ---------------------

                --- ------ - ---
                ----------------------- -------------- -
                    ---------------------------
                    ------ -- -----
                ---
                ----------------------- -------------- -
                    ---------------------------
                ---

                ----------------- -------------- -
                    -- ----- --- -- -
                        ------------------------
                        -----------------
                    - ---- -
                        -------------- ------
                    -
                ---
            --
        --

        --- ------- - ------------------------ - ------ --------------------- ---------
        ----------------------- ------------- -
            -----------------------------
            -------- -- ------
        ---
    ---
--

在这些代码中,我们封装了 grunt 任务并使用 lighthouse-pwa 执行了一些基本检验,而不是使用命令行调用。这个方法提供了更多的灵活性,让您可以使用任何嵌入式或外部封装的系统。

这个例子只是为了说明如何将 lighthouse-pwa 集成到自动化任务中。您可以根据项目的要求进行更改和修改。不过,这个例子可以让您了解如何生成自动化工作流中的 lighthouse-pwa 报告。

总结

在本文中,我们学习了如何利用 lighthouse-pwa 包来优化 PWA 的优化和性能。我们已经看到了如何将 lighthouse-pwa 集成到自动化工作流中,以进行实时反馈。虽然我们还没有涉及所有 lighthouse-pwa 功能的细节,但它们已经足以使您开始对 PWA 进行评估了。

我们希望您能够发现这些指标很有帮助,可以用它来建立一个高质量和可扩展性的 web 应用。长期来看, lighthouse-pwa 将继续发展,接下来,我们期待更多的改善和功能。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/6005739781e8991b448e9897


猜你喜欢

  • npm 包 react-smart-router 使用教程

    前端开发中,路由管理是必不可少的一部分。之前,我们可能需要手动编写路由代码,但随着 npm 上的 react-smart-router 包的出现,现在我们可以更方便地管理路由。

    3 年前
  • npm 包 `zotis-fs-store` 使用教程

    zotis-fs-store 是一个基于 Node.js 的文件存储库。它能够帮助前端类项目管理一些需要存储到本地的内容,如用户配置、缓存、以及本地数据等。本文将详细介绍 zotis-fs-store...

    3 年前
  • npm 包 @anidiotsguide/idiotic-api 使用教程

    在前端开发中,我们可能需要从服务器获取数据或者调用一些 API。@anidiotsguide/idiotic-api 是一个方便易用的 npm 包,可以帮助我们快速地调用各种 API。

    3 年前
  • npm 包 apr-sort-by 使用教程

    介绍 apr-sort-by 是一款能够根据指定条件按照升序或降序排序的 Node.js 模块。它非常简单易用,可以用来帮助你快速排序一维或多维数组。 安装 你可以使用 npm 包管理器来下载并安装 ...

    3 年前
  • npm 包 apr-until 使用教程

    在前端开发中,我们不可避免地会使用各种工具和模块,其中 npm 包是使用最为广泛的一种包管理方式。而 apr-until 就是一款常用的 npm 工具包,今天我们就来详细介绍一下它的使用方法以及一些实...

    3 年前
  • npm 包 apr-whilst 使用教程

    什么是 apr-whilst? apr-whilst 是一个使用 Node.js 的异步流程控制库,可以让我们在特定的条件下,异步地执行一些操作,例如循环一组数据直到满足一个条件为止。

    3 年前
  • npm 包 docker-hive 使用教程

    Docker-Hive 是一个基于 Docker 的 Hive 集群管理工具,它可以方便地启动和停止 Hive 集群,以及管理集群中的 Hive 节点。npm 包 docker-hive 是基于 Do...

    3 年前
  • npm 包 facilmap-frontend 使用教程

    介绍 Facilmap 是一款基于 Leaflet 的地图应用开发框架,facilmap-frontend 则是其专门为前端开发者设计的 npm 包。使用 facilmap-frontend 可以轻松...

    3 年前
  • npm 包 facilmap-server 使用教程

    facilmap-server 是一款可以在 Node.js 平台上运行的、用于快速搭建地图服务的 npm 包。它提供了丰富的地图操作接口,可以轻松地操控地图数据,并支持多种地图格式的读写。

    3 年前
  • NPM包hapi-remote-address使用教程

    在前端开发中,我们可能经常需要获取客户端的IP地址。而使用Node.js开发Web应用程序时,我们可以通过hapi-remote-address这个NPM包来轻易地获取客户端的IP地址。

    3 年前
  • npm 包 database-js2 使用教程

    如果你是一个前端开发人员,你一定经常需要和数据库打交道。而在前端开发中,使用 npm 包提供的库和工具是一种非常方便的方式。今天,我来为大家介绍一个常用的 npm 包——database-js2。

    3 年前
  • npm 包 jsevents-js 使用教程

    介绍 本文将介绍如何使用 npm 包 jsevents-js,以便在前端开发中更有效地处理 JavaScript 事件。此包为轻量级事件发布/订阅模型,可以在分布式应用程序和模块中使用。

    3 年前
  • npm 包 lifeid-js-oidc-provider-core 使用教程

    前言 在前端开发中,我们经常需要使用到身份认证和授权等功能。而 OpenID Connect (OIDC) 则是目前最流行的身份认证和授权协议之一。在 OIDC 中,用户通过第三方认证,获得 toke...

    3 年前
  • npm 包 meta-pdf 使用教程

    在前端开发中,我们经常需要将 HTML 文件转换为 PDF 文件。而 meta-pdf 这个 npm 包可以帮助我们完成这一任务。本文将介绍 meta-pdf 的详细使用方法,包括安装和 API 的基...

    3 年前
  • npm 包 rename-dll 使用教程

    前言 在前端开发过程中,我们经常会使用到一些第三方的库,比如 jQuery、react 等。而有时候我们需要对这些库进行重命名,比如将 jQuery 重命名为 $,可以减少代码体积并提高代码可读性。

    3 年前
  • npm 包 numj 使用教程

    介绍 在前端开发中,数学计算经常是不可避免的。npm 包 numj 就是一个专门针对数学计算的工具包,提供了各种数学计算方法和数据结构。 安装 在安装 numj 前,需要先安装 Node.js。

    3 年前
  • 使用 webpack-raw-bundler 来打包原始代码

    随着 web 前端开发的发展,前端项目的代码复杂度和体积也越来越大。如何有效的将代码打包、压缩和优化,成为了前端开发人员必须面对的问题。随着 Node.js 的发展,npm 包已经成为了前端开发的标配...

    3 年前
  • npm 包 @sergeysova/center-code 使用教程

    在前端开发中,我们经常会遇到需要将一段文本居中对齐的样式需求。如果每次都手动编写 CSS 样式来实现,既繁琐又容易出错。而使用 npm 包 @sergeysova/center-code 可以让居中对...

    3 年前
  • npm 包 angular-orz-image-filter 使用教程

    在前端开发中,图片的处理是非常常见的需求。然而,现有的一些图片处理库或者工具都需要使用比较复杂的语法和操作,对于新手而言,入门门槛比较高。因此,本文将介绍一个名为 angular-orz-image-...

    3 年前
  • npm 包 nodebb-plugin-bct-api 使用教程

    简介 nodebb-plugin-bct-api 是一个 NPM 包,是基于 Node.js 平台开发的一个 NodeBB 社区论坛插件,提供一个 Web API 接口,支持使用 ajax 进行接口访...

    3 年前

相关推荐

    暂无文章