layer-esm v1.0.1 项目介绍 - 开始

简介: 延续 "layer" 熟悉的调用方式,将弹层能力带入现代 ESM 开发环境。通过 "msg"、"confirm"、"load" 等示例,展示安装、导入、常见 API 对照与迁移思路,帮助项目逐步从全局 "window.layer" 切换到模块化使用模式。

致谢

介绍 layer-esm 之前,先感谢贤心。layer 曾经帮助很多前端项目快速落地弹层、提示和对话框能力。他的 API 简洁,使用体验直接,也影响了很多国内项目的交互实现方式。layer-esm 的出发点,不是割裂这套经验,而是把这套熟悉的调用方式带到现代模块化环境中。

什么是 layer-esm

layer-esm 是一个面向 Web 应用的现代弹层库。他保留了 layer 风格的 API,同时采用 ESM (ECMAScript Module,ECMAScript 模块) 形式发布,便于在现代构建工具中使用。如果已经熟悉旧版 layer,那么迁移到 layer-esm 的理解成本并不高。常见的方法名依然保持不变,例如 msgconfirmload。他的主要变化不在交互形式,而在接入方式。过去的代码依赖全局 window.layer。现在的代码通过模块导入来使用能力。

安装与引入

安装

可以通过 npm (Node Package Manager,Node 包管理器) 安装 layer-esm

npm install layer-esm

引入

推荐优先使用具名导入。这种写法更符合现代 ESM 代码风格,也更利于阅读。

import {
    close, confirm, load, msg } from "layer-esm";

也可以使用默认导入,对于旧版 layer 的迁移来说,这种写法更接近原来的调用方式。

import layer from "layer-esm";

layer.msg("保存成功");

基本用法

msg

msg 适合展示短提示。他常用于保存成功、操作完成和轻量提醒等场景。

import {
    msg } from "layer-esm";

msg("保存成功");

如果页面经常需要即时反馈,建议优先从 msg 开始迁移。

confirm

confirm 适合在用户继续操作前,给出一次明确确认。

import {
    confirm, msg } from "layer-esm";

confirm("是否继续删除这条记录?", {
   
  btn: [ "删除", "取消" ],
}, () => {
   
  msg("已删除");
}, () => {
   
  msg("已取消");
});

这种写法与旧版 layer 的思路基本一致。第一个回调处理确认动作,第二个回调处理取消动作。

load

load 适合表示异步任务正在进行。可以把他用于接口请求、初始化流程和后台处理提示。

import {
    close, load } from "layer-esm";

const loadingIndex = load();

setTimeout(() => {
   
  close(loadingIndex);
}, 1500);

load 支持多种样式。

load(0);
load(1);
load(2);

如果只需要一个简单的加载提示,这种调用方式已经足够。

从旧版 layer 迁移

接入方式的变化

迁移中最重要的变化,是从全局脚本依赖切换到模块导入。

旧写法:

<script src="layer.js"></script>
<script>
  layer.msg("保存成功");
</script>

新写法:

import {
    msg } from "layer-esm";

msg("保存成功");

常见 API 对照

消息提示

旧写法:

layer.msg("一段提示信息");

新写法:

import {
    msg } from "layer-esm";

msg("一段提示信息");

确认对话框

旧写法:

layer.confirm("如何看待前端开发?", {
   
  btn: ["重要", "特别"],
}, function () {
   
  layer.msg("确实很重要");
}, function () {
   
  layer.msg("这种回答也可以");
});

新写法:

import {
    confirm, msg } from "layer-esm";

confirm("如何看待前端开发?", {
   
  btn: [ "重要", "特别" ],
}, () => {
   
  msg("确实很重要");
}, () => {
   
  msg("这种回答也可以");
});

加载提示

旧写法:

var index = layer.load();

setTimeout(function () {
   
  layer.close(index);
}, 1500);

新写法:

import {
    close, load } from "layer-esm";

const index = load();

setTimeout(() => {
   
  close(index);
}, 1500);

迁移建议

优先迁移高频调用

建议先迁移 msgconfirmload。这 3 个方法通常最常用,也最容易统一替换。

优先使用具名导入

如果只需要少量 API,直接导入具体方法会更清晰。

import {
    close, load, msg } from "layer-esm";

这种写法可以减少 layer.xxx 形式的层级访问,也更符合现代模块代码的阅读习惯。

分页面推进

不要一次性重写全部弹层逻辑。更稳妥的做法,是按页面或按功能模块逐步替换。

可以先处理保存提示、删除确认和加载遮罩。等这些高频场景稳定后,再继续扩展到其他能力。

总结

layer-esm 延续了 layer 的调用风格,也适应了现代前端工程的使用方式。如果项目当前大量依赖 msgconfirmload,那么迁移成本通常不高。只需要完成安装、改成模块导入,并逐步替换旧的全局调用。

再次感谢贤心为 layer 打下的基础。layer-esm 希望在这份经验之上,继续提供一个更适合现代项目的弹层方案。

版权声明

本文为原创文章,作者保留版权。转载请保留本文完整内容,并以超链接形式注明作者及原文出处。

作者: 除除
原文: http://blog.mazey.net/6443.html

(完)

目录
相关文章
|
7天前
|
网络协议 应用服务中间件 nginx
Debian 安装与使用 Certbot
介绍 Debian 环境下 Certbot 的安装、HTTPS 证书申请、Nginx 配置、续约与撤销流程,并涵盖 standalone、webroot、Hook、systemd 定时器及 Docker Compose 端口冲突排查,帮助建立稳定的证书自动化管理方案。
43 0
|
2月前
|
人工智能 自然语言处理 前端开发
向量空间 JBoltAI 自研 TokUI 技术解析
TokUI是向量空间JBoltAI自研的流式UI引擎,具备零运行时依赖、字符级真流式渲染、轻量DSL语法、插件化组件、安全事件机制及动态主题等六大核心特性,原创突破断点续解、缓冲回持、AI容错等关键技术,全面支撑AI对话、智能体、数据分析等场景,实现前后端统一UI协议。(239字)
207 0
|
2月前
|
弹性计算 人工智能 运维
阿里云价格最便宜的云服务器解析:轻量应用服务器38元、199元与云服务器99元和199元
本文介绍了2026年阿里云四款低价云服务器:轻量应用服务器2核2G(38元/年,每日限量抢购)、2核4G(9.9元/月起);ECS经济型e实例2核2G(99元/年)及通用算力型u1实例2核4G(199元/年,支持续费同价至2027年3月)。文章从配置、价格、续费政策、适用场景等维度逐一对比,指出轻量服务器适合新手快速部署,99/199元ECS实例适合长期稳定使用。
|
2月前
|
人工智能 前端开发 测试技术
别光让AI写代码了,RAG帮你把测试用例生成效率拉满——测试同学实操手册
本文揭秘RAG(检索增强生成)如何赋能测试提效:通过构建高质量知识库、精准提示词设计、优化检索参数及建立反馈闭环,显著提升测试用例覆盖率与编写效率。实践表明,中小需求用例编写时效可提升75%,采纳率达85%以上。
|
2月前
|
人工智能 自然语言处理 IDE
阿里云Qoder CN插件概述及安装教程:VS Code与JetBrains IDE快速接入
Qoder CN是阿里云推出的AI智能体编程工具,前身为通义灵码,面向软件开发全流程提供智能编码服务,支持代码补全、生成、解释、调试及端到端任务执行,适配多语言与复杂工程场景。该工具提供独立IDE、JetBrains系列IDE插件、VS Code插件三种部署形态,覆盖主流开发环境,无需切换工具即可获得AI编程能力,支持接入阿里云百炼大模型服务,兼顾个人开发与企业级工程需求。
494 0
|
2月前
|
人工智能 运维 安全
2026年6月热门建站工具测评报告
2026年6月热门建站工具测评报告
141 2
|
2月前
|
人工智能 算法 搜索推荐
自媒体种草重塑消费决策链路:内容信任经济下的营销新范式
自媒体种草正重塑消费决策链路:2025年市场规模超1.8万亿元,全域30+平台矩阵成标配;字节系算法推荐流量达其他平台3倍;地域化精准种草提升到店转化率43%+;GEO(生成式引擎优化)成AI时代新赛道,70%用户采信AI推荐。信任经济下,真实、场景化、高价值内容是核心竞争力。(239字)
|
2月前
|
运维 安全 Java
接口添加白名单 IP 地址的作用与价值
本文系统阐述IP白名单机制在API安全防护中的核心价值:通过“默认拒绝、显式授权”策略,从安全、性能、合规等维度筑牢防线——防未授权访问、减服务器压力、满足等保/PCI DSS等合规要求,并支持多层级部署与Java/Nginx快速落地,是API安全体系中最基础、经济且高效的第一道屏障。(239字)
|
1月前
|
JavaScript 网络安全 API
scp-next v1.0.19 项目介绍: 面向 Node.js 开发者的 SSH 文件传输工具
介绍 scp-next v1.0.19 的 npm 安装、CLI 上传下载、配置文件、凭据安全、库 API 和新人使用流程。
146 0
|
2月前
|
运维 监控 网络协议
阿里云DDoS防护一站式操作手册:选型、部署、防护策略与自动化运维
阿里云DDoS防护体系构建了覆盖免费基础防护、付费增值防护的完整矩阵,可满足从个人轻量业务到企业级高风险场景的全维度防护需求,核心产品包括DDoS基础防护、DDoS原生防护、DDoS高防(新BGP&国际)三大类,不同产品在防护能力、部署方式、适用场景上差异显著,是选型的核心依据。
314 0