聊聊原生拖拽API

拖拽api是我们前端非常常见的api了,比如拖拽排序,拖拽上传文件,树形结构的生成等等都会用到拖拽api,拖拽api本身不复杂难得是在应用上,下面用一个例子来简单使用下这些api

先实现布局如下

image.png

第一步:我们需要把左侧的元素变成可拖拽的,我们可以使用html属性给元素加一个draggable属性把它设为true,该元素就可以拖拽了

    <div class="container">
      <ul class="drop-left">
        <li draggable="true">vue</li>
        <li draggable="true">react</li>
        <li draggable="true">webpack</li>
        <li draggable="true">node</li>
        <li draggable="true">js</li>
      </ul>
    </div>

image.png

html的属性只是把它变成可拖拽元素,此时只能拖拽并没有效果,所以我们的通过书写js代码自定义一系列拖拽事件,拖拽其实就是一系列事件的组合

第二步:书写js代码监控元素拖拽和拖拽事件,我们可以通过js的事件委托直接监控他们的父元素来实现监控这个区域内所有和拖拽相关的事件了

    const container = document.querySelector(".container");

    // 此事件表示拖拽开始事件,可通过e.target拿到拖拽的元素
    container.ondragstart = (e) => {
   
      console.log("start", e.target);
    };

    // 拖拽经过哪些元素上面就会触发该事件,可通过e.target知道我拖拽的元素目前在那个元素上面
    container.ondragover = (e) => {
   
      console.log("over", e.target);
    };

    // 可以通过这个事件拿到当前元素拖到了哪个元素之上
    container.ondragenter = (e) => {
   
      console.log("enter", e.target);<
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
原生是一种面向云环境下应用程序开发和部署的软件架构理念,旨在使应用程序能充分发挥云计算平台的特性和优势。与传统的应用程序开发方式相比,云原生采用了一系列新的技术和方法,其中声明式API是其中之一。 声明式API是云原生架构中的一种设计模式,提供了一种更加简化、抽象化的开发方式。它通过定义目标状态(Desired State)来描述应用程序或系统的期望状态,而不是手动指定一系列的操作步骤。开发人员只需关注应用程序的最终状态即可,无需关心具体的实现细节。 利用声明式API,开发人员可以通过编写一些清晰简洁的配置文件来定义应用程序的各个组件、资源和依赖关系。这些配置文件被加载到云原生平台中,平台会根据配置文件中的描述进行自动化的资源分配、配置管理和环境搭建等操作,从而将应用程序部署到云端。 声明式API的好处是显而易见的。首先,它降低了开发人员的学习和使用成本,因为开发人员只需了解和编写配置文件,而不需要掌握复杂的管理和操作命令。其次,它提高了开发效率,因为开发人员可以通过简单地修改配置文件来实现应用程序的升级、扩展和回滚等操作,无需手动进行繁琐的工作。 总的来说,云原生的声明式API使得应用程序的开发和部署变得更加简单、自动化和可靠。它提供了一种抽象化和简化的开发方式,使得开发人员能够专注于业务逻辑和需求,而不需要花费过多精力在底层的实现细节上。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值