前言
Layui是什么?
Layui 是一套开源免费的 Web UI 组件库,采用自身轻量级模块化规范,遵循原生态的 HTML/CSS/JavaScript
开发模式,极易上手,拿来即用。其风格简约轻盈,而内在雅致丰盈,甚至包括文档在内的每一处细节都经过精心雕琢,非常适合网页界面的快速构建。Layui 区别于一众主流的前端框架,却并非逆道而行,而是信奉返璞归真之道。确切地说,它更多是面向于追求简单的务实主义者,即无需涉足各类构建工具,只需面向浏览器本身,便可将页面所需呈现的元素与交互信手拈来。
Layui过往七年的开源历程
在 Layui 过往七年的开源历程中,从未用多达二十个预览版去为一个正式版而引路。显然,2.8.0 是 Layui 一次朴实的回归,更是情怀的延续。但却并不是想以此呼吁人们重新去选择它,我们仍然坚持两年前那则《Layui 原官网下线公告》中的观点,即仍然推荐大家去拥抱主流,始终保持对前沿技术的无限热爱,是开发者们都应具备的思维属性。而 Layui 所做的,是为填补主流之外的那些略显狭小的空隙。
破旧
1.0.0 首版,此后多年被广泛应用在不计其数的 Web 平台。
2.6.8 一直连续迭代到如今的最新版本。
立新
2.8.0 正式版,并上线了新的文档站点,这是一次朴实的回归,更是情怀的延续。 但我们仍然坚持两年前那则公告中的观点, 即仍然推荐大家去拥抱主流,始终保持对前沿技术的无限热爱,是开发者们都应具备的思维属性。 而 Layui 所做的,是为填补主流之外的那些略显狭小的空隙。Layui 虽不是前端主流,但也早已不是作者个人的 Layui,而是所有仍在坚持使用它的人的 Layui,它仍然支撑着许多项目,也代表着许多人的工作。作为开源创作者,应该要为这些坚持者而守望。未来,Layui 会持续陪伴着所有为之热爱的人们,共同去论证 Layui 开发模式的可行性。
持续更新维护
新文档站
-
文档协作: https://github.com/layui/layui/tree/2.x/docs
- 文档阅读: https://layui.dev
风格调整
#16baaa,在原有的墨绿基础上赋予了清新。
更简单的构建
layui-v2.8.0 ├─ css │ └─ layui.css ├─ font │ ├─ iconfont.eot │ ├─ iconfont.svg │ ├─ iconfont.ttf │ ├─ iconfont.woff │ └─ iconfont.woff2 └─ layui.js
相比原有的目录结构:
layui ├─ css │ ├─ modules │ │ ├─ laydate │ │ │ └─ default │ │ │ └─ laydate.css │ │ ├─ layer │ │ │ └─ default │ │ │ ├─ icon-ext.png │ │ │ ├─ icon.png │ │ │ ├─ layer.css │ │ │ ├─ loading-0.gif │ │ │ ├─ loading-1.gif │ │ │ └─ loading-2.gif │ │ └─ code.css │ └─ layui.css ├─ font │ ├─ iconfont.eot │ ├─ iconfont.svg │ ├─ iconfont.ttf │ ├─ iconfont.woff │ └─ iconfont.woff2 └─ layui.js
将原先 layer/laydate/code 的 css 统一构建到 layui.css,以尽量减少请求,同时原有的图片资源全部替换为纯CSS实现。
Layui 2.8 升级指南
Layui 2.8
总体向下兼容,但仍有以下变更需要注意:
-
2.8
调整了table
的page,limit
属性,当page
未开启时,则默认不再向后端传递这两个参数 -
2.8
调整了table
的特定属性名。序号:LAY_INDEX
→LAY_NUM
;下标:LAY_TABLE_INDEX
→LAY_INDEX
,若是之前用到这几个特定属性,需更换为新版名称。 -
2.8
调整了checkbox
的lay-skin
属性默认为原始风格,原来的标签风格可通过lay-skin="tag"
来设置。 -
2.8
调整了checkbox
的私有属性lay-text
,采用统一的title
属性替代 -
2.8
调整了util.fixbar
的showHeight
属性名称为margin
2.8
剔除了 2.7.6 升级到 2.8
2.8 对 2.7.6
最友好,可直接覆盖升级,只需按照上述提到的几点进行适配即可。
2.6.x 升级到 2.8
2.6.11 和 2.7.x
的几处调整要适配,包括:
- 重要:
-
2.6.11
调整了table
组件的escape
属性默认为true
,即默认开启编码功能(之前默认为false
) -
2.7.5
调整了table
表头的edit
属性,支持函数写法,且单元格是否编辑不再以<td>
标签上的data-edit
属性为准,而是统一以cols
属性中的edit
属性为准,详细可参考新版文档关于edit
的用法:https://layui.dev/docs/2.8/table/#cols.edit
2.6.11
调整了 laytpl
的 {{ d.field }}
标签的输出为默认开启编码。即与 {{= d.field }} 等同。因此,若输出内容包含 HTML
且需要正常渲染的,需采用 {{- d.field }}
的标签语句。详细可参考:#I5AXSP:🚀 从 2.6.11 开始,对 laytpl 输出 HTML 语句和 table 默认 escape 属性的重要调整
2.6.0 以下版本 升级到 2.8
2.6.0,一般不建议升级。但如果非升级不可,除了结合上述提到的变更外,还要重点参考 2.6.0
的更新日志中提到的「重要提示」进行适配:https://layui.dev/2.7/docs/base/changelog.html#2.6.0
2.6.0 之前的版本是按需加载内置组件,从 2.6.0
开始,统一构建到 layui.js
中。因此,要注意下之前引入的 JS
业务代码的放置位置,若是放在 <head>
区域,需调整放置到 <body>
标签内部的尾端。
layuiAdmin 主题升级 Layui 到 2.8
laytpl 的调整进行修改。具体也可以参考:#I65D80:layuiAdmin 旧版本中的 Layui 如何适配升级 2.7 版本
其他细节
https://layui.dev/docs/2.8/versions.html
Issue 进行详细反馈。
极简模块化Web UI 组件库
动画设置
通过anim
参数实现四个弹出方向的动画类,可实现边缘抽屉弹出,同时关闭时自动匹配对应的动画。
WIN10风格弹框
Layui开源项目相关地址
- Layui社区:https://gitee.com/layui/layui/issues
- Layui项目源码地址:https://gitee.com/layui/layui
- Layui-Vue项目源码地址:https://gitee.com/layui/layui-vue
- Layui 2.8 升级指南:https://gitee.com/layui/layui/issues/I6Z07Z
- Layui2.8正式发布,本文详细介绍所有新特性:https://gitee.com/layui/layui/issues/I6YKF3