Files
layui/examples/all.html
sunxiaobin89 5ab142153b ci: 添加 lint 和 format 工具,统一代码格式 (#2905)
* style: 统一代码格式,修复ESLint错误

- 为所有模块添加尾随逗号
- 修复缺少分号的语句
- 统一对象字面量格式
- 添加ESLint配置文件和文档
- 更新package.json中的脚本和依赖项

* build: 添加 ESLint 配置文件以支持 IE9+ 兼容性

* refactor(upload): 使用已缓存的hint实例替换直接调用

优化代码性能,避免重复实例化hint对象,直接使用模块顶部已缓存的实例

* chore: 更新.gitignore文件以包含更多忽略规则

添加了更多常见的临时文件、编辑器文件、构建输出目录和运行时数据的忽略规则,使项目更加整洁并避免不必要的文件被提交到版本控制中

* fix(lay.js): 修复passive事件监听器选项的返回值

确保getter函数返回true以正确支持passive事件监听

* refactor(form): 移除表单模块中的冗余代码

删除表单模块中无实际作用的冗余代码行,这些代码只是将属性重新赋值为自身,没有实际功能意义

* fix(form): 修复复选框状态处理逻辑

确保复选框的 indeterminate 和 checked 状态被正确转换为布尔值,并优化事件调用时的空格格式

* feat(eslint): 完善 ESLint 配置并添加 VSCode 支持

添加 VSCode 配置文件以支持 ESLint 自动修复和格式化
更新 ESLint 配置,增强代码风格和兼容性规则
修复 package.json 中的脚本拼写错误并添加 format 脚本
调整 .gitignore 以允许特定 VSCode 配置文件

* style: 统一代码中的引号格式并修复缩进问题

统一将双引号改为单引号,修复部分代码缩进不一致的问题,提升代码风格一致性

* docs: 删除过时的ESLint配置文档文件

* build: 采用 prettier 作为代码格式化工具,剔除 ESLint 格式化部分

* chore: 剔除 .vscode/ 配置,保持编辑器中立

* build: 修改 ESLint 为「扁平化配置」方式,避免大量参数堆砌

* chore: 格式化代码

* ci: 添加 git hooks 和 CI 环节把关代码风格

* ci: update

* ci: update

* test: 测试 ci format

* ci: 改用 husky 作为 git hooks,与 Layui 3 保持一致

经测试,simple-git-hooks 生成的 pre-commit 默认为 sh,在 Windows 不兼容(必须用 git bash 执行 commits)

* build: 新增 CI 和生产环境跳过 husky 安装的判断

* build: 剔除重复配置

* build: 优化 eslint 配置

---------

Co-authored-by: 贤心 <3277200+sentsim@users.noreply.github.com>
2025-11-10 16:03:37 +08:00

243 lines
6.8 KiB
HTML

<!doctype html>
<html>
<head>
<meta charset="utf-8" />
<meta
name="viewport"
content="width=device-width, initial-scale=1, maximum-scale=1"
/>
<title>完整库使用 - layui</title>
<link rel="stylesheet" href="../dist/css/layui.css" />
<style>
body {
padding: 10px;
}
</style>
</head>
<body>
<textarea
style="
position: fixed;
top: 0;
bottom: 0;
right: 0;
width: 100px;
background-color: #666;
z-index: 100;
resize: none;
"
>
</textarea>
<div id="demo1"></div>
<div class="layui-btn-container">
<button class="layui-btn demo" test-active="test-form">
测试弹出式 Form
</button>
<button class="layui-btn demo" test-active="test-use">
测试是否重复加载内置组件
</button>
</div>
<div class="layui-inline">
<input class="layui-input" id="date1" placeholder="日期" />
</div>
<div class="layui-tab" lay-filter="tabDemo">
<ul class="layui-tab-title">
<li class="layui-this" lay-id="1">标题1</li>
<li lay-id="2">标题2</li>
<li lay-id="3">标题3</li>
<li lay-id="4">标题4</li>
<li lay-id="5">标题5</li>
</ul>
<div class="layui-tab-content">
<div class="layui-tab-item layui-show">
<div class="layui-form">
<select name="city" lay-verify="">
<option value="">请选择一个城市</option>
<option value="010">北京</option>
<option value="021">上海</option>
<option value="0571">杭州</option>
</select>
</div>
</div>
<div class="layui-tab-item">
<div id="test2" class="demo-transfer"></div>
</div>
<div class="layui-tab-item">3</div>
<div class="layui-tab-item">4</div>
<div class="layui-tab-item">5</div>
</div>
</div>
<script src="../dist/layui.js"></script>
<script>
console.log(layui.$);
//(function(){
layui.use(function () {
var $ = layui.jquery,
layer = layui.layer,
form = layui.form,
laypage = layui.laypage,
element = layui.element,
transfer = layui.transfer,
util = layui.util,
laydate = layui.laydate;
layer.msg('hello layui');
//layer.closeAll();
//自动测试
(function (run) {
if (!run) return;
var timer = setInterval(function () {
location.reload();
}, 1000);
$.ajax({
url: './all.html',
beforeSend: function () {
layer.load();
},
success: function () {
layer.closeAll('loading', function () {
setTimeout(function () {
if ($('.layui-layer-loading').length) {
console.error('layer close 异常');
clearInterval(timer);
}
}, 200);
});
}
});
})(0);
laypage.render({
elem: 'demo1',
count: 100 //总页数
});
console.log(lay('#footer').html());
laydate.render({
elem: '#date1'
});
//测试加载非内置模块
/*
layui.config({
base: 'extends/'
}).extend({
mod1: 'mod1'
,mod2: 'mod2'
}).use('mod1');
*/
//定义标题及数据源
transfer.render({
elem: '#test2',
title: ['候选文人', '获奖文人'], //自定义标题
data: [
{ value: '1', title: '李白' },
{ value: '2', title: '杜甫' },
{ value: '3', title: '苏轼' },
{ value: '4', title: '李清照' },
{ value: '5', title: '鲁迅', disabled: true },
{ value: '6', title: '巴金' },
{ value: '7', title: '冰心' },
{ value: '8', title: '矛盾' },
{ value: '9', title: '贤心' }
],
//,width: 150 //定义宽度
height: 210 //定义高度
});
//触发事件
util.event('test-active', {
'test-form': function () {
layer.open({
type: 1,
resize: false,
content: [
'<ul class="layui-form" style="margin: 10px;">',
'<li class="layui-form-item">',
'<label class="layui-form-label">输入框</label>',
'<div class="layui-input-block">',
'<input class="layui-input" name="field1">',
'</div>',
'</li>',
'<li class="layui-form-item">',
'<label class="layui-form-label">选择框</label>',
'<div class="layui-input-block">',
'<select name="field2">',
'<option value="A">A</option>',
'<option value="B">B</option>',
'<select>',
'</div>',
'</li>',
'<li class="layui-form-item" style="text-align:center;">',
'<button type="submit" lay-submit lay-filter="*" class="layui-btn">提交</button>',
'</li>',
'</ul>'
].join(''),
success: function (layero) {
layero.find('.layui-layer-content').css('overflow', 'visible');
form.render().on('submit(*)', function (data) {
layer.msg(JSON.stringify(data.field));
});
}
});
},
'test-use': function (othis) {
layui.use(
[
'laytpl',
'laypage',
'laydate',
'jquery',
'layer',
'util',
'element',
'upload',
'slider',
'colorpicker',
'form',
'tree',
'transfer',
'table',
'carousel',
'rate',
'flow',
'code'
],
function () {
layer.tips(
'请观察 Network 是否有重复加载 js 文件。如果没有任何新的请求,则代表正常。',
othis,
{
time: 10 * 1000
}
);
}
);
}
});
});
//})();
</script>
<span class="layui-breadcrumb" lay-separator="-">
<a href="">首页</a>
<a href="">国际新闻</a>
<a href="">亚太地区</a>
<a><cite>正文</cite></a>
</span>
<div id="footer">© footer</div>
</body>
</html>