npm 包 @popperjs/core 使用教程

阅读时长 5 分钟读完

在前端开发过程中,经常需要使用弹出框、下拉框等 UI 控件。这些控件需要正确的定位才能在页面上正确的展示。而定位又是一个非常复杂的过程,需要考虑到目标元素在页面的位置、大小、滚动条等因素,并且要考虑到不同浏览器的兼容性等问题。为了解决这个问题,有很多 JS 库提供了相应的解决方案。其中,@popperjs/core 就是其中的一个比较优秀的库。

@popperjs/core 是一个基于 Popper.js 的库,它提供了通用的定位方案,支持弹出框、下拉框等 UI 控件的定位。@popperjs/core 官方网站是:https://popper.js.org/

本文将介绍如何使用 @popperjs/core,包括如何安装、如何使用、常用的配置参数等。同时,本文还将给出一些示例代码,让读者更好地理解如何使用此库。

安装

@popperjs/core 可以通过 npm 安装。打开命令行终端,执行以下命令:

使用

使用 @popperjs/core 的过程主要包括以下几个步骤:

  1. 引入库

在 HTML 文件中引入 @popperjs/core 库,可以通过以下方式:

也可以使用模块方式引入:

  1. 创建 Popper 实例

通过 createPopper 方法创建 Popper 实例。createPopper 接收两个参数,第一个是目标元素(被定位的元素),第二个是引导元素(定位的参考元素)。

  1. 配置 Popper 实例

Popper 实例可以通过配置参数进行配置,包括定位方式、偏移量、边界限制等。常用的配置参数包括:

  • placement: 定义目标元素相对于引导元素的哪个边界进行定位;
  • modifiers.offset: 定义偏移量;
  • modifiers.preventOverflow: 定义边界限制。
-- -------------------- ---- -------
----- -------- - --------------------------- ------------- -
  ---------- ---------------
  ---------- -
    -
      ----- ---------
      -------- -
        ------- --- ---
      -
    --
    -
      ----- ------------------
      -------- -
        --------- -----
        -------- ------
        -------- --
      -
    -
  -
---
  1. 销毁 Popper 实例

当 Popper 实例不再需要使用时,可以通过 destroy 方法销毁。

示例代码

接下来给出一个完整的示例代码,用于演示如何使用 @popperjs/core。

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

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

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

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

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

上述代码中,当用户鼠标移动到按钮上时,会创建 Popper 实例并显示弹出框。当用户鼠标移开按钮时,弹出框又会隐藏,并销毁 Popper 实例。在创建 Popper 实例时,设置了定位方式为“底部居左”,偏移量为“10 像素”且边界限制为“仅进行主轴限制且边界留出 10 像素的空白”。

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

纠错
反馈