npm 包 ngx-circle-progress 使用教程

阅读时长 8 分钟读完

什么是 ngx-circle-progress

ngx-circle-progress 是一个用于构建圆形进度条的 Angular 组件。它内置了多个自定义选项,可以自定义进度条的颜色、厚度、绘制线条的方式以及数值、文字等。

本文针对初学者和有一定经验的前端开发者,介绍如何使用 ngx-circle-progress。

使用方法

步骤一:安装 ngx-circle-progress

首先,我们需要在项目目录下安装 ngx-circle-progress。在终端中执行以下命令:

步骤二:导入 ngx-circle-progress

在 Angular 中使用外部库有两种方式:全局导入和按需导入。这里我们采用按需导入的方式。首先需要在模块中导入 ngx-circle-progress:

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

步骤三:在模板中使用 ngx-circle-progress

在模板中添加 ngx-circle-progress:

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

以上代码实现了一个进度为 60%、带标题和数字的圆形进度条。

自定义选项

ngx-circle-progress 提供了大量自定义选项,使用户可以快速构建出自己的进度条。下面对自定义选项进行详细解释:

  • percent (必选):进度百分比,取值范围为 0-100
  • showTitle:是否显示标题,默认为 false
  • title:标题,如果 showTitlefalse,则此选项无效。
  • showSubtitle:是否显示副标题,默认为 false
  • subtitle:副标题,如果 showSubtitlefalse,则此选项无效。
  • color:进度条颜色,默认为 'rgb(52, 152, 219)'
  • background:进度条背景颜色,默认为 'rgb(235, 235, 235)'
  • borderWidth:进度条边框宽度,默认为 0
  • borderColor:进度条边框颜色,默认为 'rgba(204, 204, 204, 0.2)'
  • borderRadius:进度条圆角半径,默认为 0
  • maxPercent:最大进度百分比,如果未设置,则默认等于 percent
  • animations:是否启用动画,默认为 true
  • animationDuration:动画时长(秒),默认为 1
  • units:是否显示单位,默认为 true
  • unitsFontSize:单位字体大小,默认为 16
  • titleFontSize:标题字体大小,默认为 24
  • subtitleFontSize:副标题字体大小,默认为 16
  • circleThickness:圆形进度条的厚度,默认为 4
  • circleFillGap:实心部分与圆形进度条的间隔,默认为 4
  • startAngle:起始角度,默认为 -90(3 点钟方向)。
  • reverse:是否反向绘制进度条,默认为 false(逆时针方向)。
  • responsive: 是否允许响应式布局,默认为 false
  • optimizeGradient: 优化渐变,默认为 false
  • innerStrokeWidth:内圆形进度条宽度,默认为 0,表示不显示。
  • innerStrokeColor:内圆形进度条颜色,默认为 '#f0f0f0'
  • outerStrokeWidth:外圆形进度条宽度,默认为 8
  • outerStrokeColor:外圆形进度条颜色,默认为 '#eaeaea'
  • outerStrokeGradient:是否使用渐变色填充外圆形,默认为 false
  • outerStrokeGradientStops:外圆形进度条渐变停留点,数组的元素是对象,包含 offsetcolor 属性。默认为 [{'offset': 0, 'color': '#3aeabb'}, {'offset': 100, 'color': '#fdd250'}]
  • roundedEdges:是否使用圆角,默认为 false
  • textSize:中心文本的字体大小,默认为 50
  • duration: 单位为 ms,是否使用持续动画,默认为 0
  • animateTitle: 是否使用动画标题,默认为 false
  • animationEase: 动画函数的选择,默认为 easeInOutExpo

示例代码

以下为一个包含进度条和滑动条的 Angular 组件。进度条的数值由滑动条决定。

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

总结

本文介绍了 ngx-circle-progress 的使用方法和相关自定义选项。通过设置不同的参数,我们可以快速创建出符合项目需要的进度条。同时,本文还展示了 ngx-circle-progress 的示例代码,希望能帮助读者更好地理解 ngx-circle-progress。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60065f81238a385564ab6b8e

纠错
反馈