NPM 包 Bowley 使用教程:前端快速生成骨架屏

随着移动互联网时代的到来,用户对于网页的访问速度和用户体验提出了更高的要求。在手机网络环境不佳的情况下,长时间的白屏等待往往会给用户留下消极的体验,从而降低了网站的黏性。而使用骨架屏技术可以有效地缓解这种问题,在页面展现过程中,首先用一个简单的骨架屏代替页面加载,等到页面数据加载到位后再渐进展现页面内容,从而使用户感受到更好的流畅体验。

本文将介绍一款 NPM 包 Bowley,它是一个轻量级的骨架屏库,并且具有良好的灵活性,使用 Bowley 可以为项目快速实现骨架屏功能。

Bowley 的安装

Bowley 是一个 NPM 包,因此我们需要先按照一般的 NPM 包安装方式进行安装。命令行运行以下语句:

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

安装完成后,Bowley 就集成到了我们的项目中,我们可以直接开始使用它。

Bowley 的基本用法

Bowley 的基本用法非常简单,只需要在页面中引入样式文件和 JavaScript 文件,然后在需要生成骨架屏的元素外部使用一个容器 div 标签,并添加 class 名称即可。

引入样式文件和 JavaScript 文件:

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

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

使用容器 div 标签并添加 class:

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

其中,.bowley-container 是外部容器,.bowley-item 是表示需要生成骨架屏的元素。

最后,我们在 JavaScript 中调用 Bowley 的方法 bowley.init() 即可实现对于当前容器的骨架屏生成:

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

Bowley 的拓展用法

除了基本用法,Bowley 还支持更多的拓展用法,可以让我们通过一些配置项调整骨架屏的样式,从而满足项目的各种需求。

修改全局默认的样式

我们可以通过以下方式来修改全局的默认骨架屏样式,一些可调整的选项包括:颜色、宽度、高度、动画等效果等。

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

单独修改元素的样式

对于一些需要特殊展示的元素,我们可以对其单独进行样式的调整:

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

定义骨架屏的区域

在一些元素的父容器中,我们想要实现只在某一部分区域内生成骨架屏的效果,我们可以添加 class .bowley-cover,表示将该容器内的子元素设定为骨架屏区域。

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

完成骨架屏后的后续操作

我们可以通过配置项 afterFinish 来执行骨架屏生成完成后的回调:

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

Bowley 示例代码

在学习了 Bowley 的基本用法后,我们可以看下示例代码(HTML + CSS + JS):

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

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

应用场景

骨架屏技术的应用非常广泛,例如:

  • 多张图片的图库列表;
  • 电商类产品列表页面;
  • 瀑布流布局页面;
  • 长列表类页面等。

骨架屏技术可以有效的提升用户体验,并且相对于一些复杂的前端方案,它实现的难度和成本低,可谓是前端优化领域具有很高的性价比的一种方式。

结语

本文介绍了 Bowley 包的安装、基本用法和拓展用法,以及应用场景等方面的知识。骨架屏技术是当前前端优化的一个非常实际的应用,在小型项目和中型项目中使用 Bowley 都可以提升用户体验。如果您是一位前端开发者,现在就可以尝试一下使用 Bowley 来改善您的网站性能和用户体验。

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


猜你喜欢

  • npm 包 scalewh 使用教程

    在前端开发过程中,经常需要对图片进行缩放操作,而 scalewh 是一个轻量级的 npm 包,它可以很方便地帮助前端开发者进行图片缩放处理。本文将介绍 scalewh 的使用教程,包括如何安装、使用和...

    2 年前
  • npm 包 wiringpi-node 使用教程

    介绍 WiringPi 是 Raspberry Pi 上的一个 GPIO 库,它允许使用 C 和 C++ 语言控制 Raspberry Pi 的 GPIO 端口。wiringpi-node 是一个用于...

    2 年前
  • npm 包 mocha-optimization-table-report 使用教程

    简介 mocha-optimization-table-report 是一个用于优化 JavaScript 测试用例运行效率的 npm 包。它会对 mocha 运行测试用例得到的结果进行分析,并生成一...

    2 年前
  • npm 包 generator-cloud-elements-postman 使用教程

    1. 什么是 generator-cloud-elements-postman generator-cloud-elements-postman 是一个 npm 包,可以帮助开发者自动生成基于 Clo...

    2 年前
  • npm 包 lycwed-cordova-plugin-games-services 使用教程

    介绍 lycwed-cordova-plugin-games-services 是一个 Cordova 插件,可以用于在 Android 平台上集成 Google Play 游戏服务。

    2 年前
  • npm 包 cordova-plugin-winbackbutton 使用教程

    简介 cordova-plugin-winbackbutton 是一个适用于 Cordova 应用的插件,它提供了一种处理 Android 设备的返回键行为的方法,并且可以让开发者方便地控制应用在返回...

    2 年前
  • npm 包 @kubernetes/typescript-node 使用教程

    Kubernetes 是一个流行的容器编排系统,它允许您在云或本地环境下管理容器化应用程序。作为前端开发人员,我们可以利用 @kubernetes/typescript-node 这个 npm 包来与...

    2 年前
  • NPM包 Bootstrap CSTable 使用教程

    在前端开发中,表格是一个常用组件,不仅仅用于数据展示,还广泛应用于数据筛选、排序、分页以及可编辑的表格内容。Bootstrap CSSTable 是一个基于 Bootstrap 的轻量级表格组件,提供...

    2 年前
  • npm 包 factorgraph-viz 使用教程

    Factorgraph-viz 是一个用于显示因子图的 npm 包,能够帮助前端开发者更好地理解因子图和数学模型。 安装 在使用 factorgraph-viz 之前,请先通过 npm 进行安装: -...

    2 年前
  • npm 包 hyphenate-web 使用教程

    在 Web 开发中,我们可能需要处理文本的换行问题。 hyphenate-web 就是一个很好的解决方案。它是一个开源的 npm 包,可以帮助我们自动添加连字符来实现单词和单词之间的正确换行。

    2 年前
  • npm 包 hnparameter 使用教程

    介绍 hnparameter 是一个用于通过 URL 参数方式控制 HTML 页面渲染的工具包,可以很方便地在前端开发中对页面效果进行调整。hnparameter 的创建者 hnrchen 经常在 H...

    2 年前
  • 前端必知!npm 包 @com.christiangrete.libs.js/sequential-promise-processor 使用教程

    什么是npm包? npm(node package manager)是一个包管理器,也是一个世界上最大的软件注册表,开发人员可以在其中找到数以百万计的供使用的软件包。

    2 年前
  • npm 包 matango 使用教程

    前言 在现代 Web 开发中,前端资源的使用已经成为了必不可少的一部分。npm 是前端社区最广泛使用的包管理工具之一,其中 matango 包是一个功能齐全的 JavaScript 工具包。

    2 年前
  • npm 包 @elephantly/milligram-admin-theme 使用教程

    前言 在开发前端项目时,经常会用到一些 UI 框架或者主题来搭建页面。@elephantly/milligram-admin-theme 是一个在 milligram 基础上开发的后台管理 UI 主题...

    2 年前
  • npm 包 druid-net 使用教程

    介绍 druid-net 是一个简单易用的前端 JavaScript 库,旨在提供统一的 API 访问各种后端 RESTful API 服务。使用该库,我们可以轻松地在浏览器端访问服务端的 API 资...

    2 年前
  • npm 包 upload-test-server 使用教程

    简介 upload-test-server 是一个方便的 npm 包,可用于在本地上传测试环境中快速搭建一个文件上传服务器,支持多种文件上传方式,如 post、put 等。

    2 年前
  • npm 包 @10ark/react-template 使用教程

    介绍 @10ark/react-template 是一个用于 React 项目初始化的 npm 包,它提供了一个基于 create-react-app 的模板,并增加了一些常用的依赖和配置,在项目初始...

    2 年前
  • npm 包 log4js-redis-logstash 使用教程

    前言 在日常前端开发中,我们常常会遇到需要记录日志以便快速定位问题的情况。而 log4js-redis-logstash 是一个非常好用的 npm 包,它可以同时将日志写入 Redis 和 Logst...

    2 年前
  • npm 包 react-native-forward-calls 使用教程

    前言 在前端开发中,我们经常会使用到 npm 包。这些包能够帮助我们更加高效、便捷地完成开发工作。其中一个非常实用的 npm 包是 react-native-forward-calls。

    2 年前
  • npm 包 @savvy-css/generator-savvy-css 使用教程

    简介 在前端开发中,CSS 样式是一个不可避免的话题。但是,手写 CSS 样式往往会让开发者头痛不已,尤其是在处理复杂样式布局的时候。因此,使用样式生成器可以大大提高开发效率和可维护性。

    2 年前

相关推荐

    暂无文章