diff --git a/extend/base/admin/view/debug/log/index.html b/extend/base/admin/view/debug/log/index.html
index b3f2501..90c8c21 100644
--- a/extend/base/admin/view/debug/log/index.html
+++ b/extend/base/admin/view/debug/log/index.html
@@ -1,5 +1,27 @@
@@ -12,7 +34,7 @@
padding: 15px;
white-space: pre-wrap;
word-wrap: break-word;
- height: calc(100vh - 120px);
+ height: calc(100vh - 170px);
overflow-y: auto;
}
diff --git a/extend/base/admin/view/debug/log/index.js b/extend/base/admin/view/debug/log/index.js
index 9acad89..d128901 100644
--- a/extend/base/admin/view/debug/log/index.js
+++ b/extend/base/admin/view/debug/log/index.js
@@ -7,28 +7,35 @@ $(function () {
limit = 50,
noMoreData = false;
var $logContainer = $('#log-container');
+ var order = 'desc', sortField = 'uid';
function loadLogs() {
if (noMoreData) {
return;
}
+ var sort = {};
+ sort[sortField] = order;
+ if(sortField = 'uid'){
+ sort['id'] = 'asc'
+ }
+
ua.request.get({
url: ua.url(init.indexUrl),
data: {
page: page,
limit: limit,
- sort:{
- id:'desc'
- }
+ sort: sort
}
}, function (res) {
if (res.data && res.data.length > 0) {
var html = '';
var isFirstPage = (page === 1);
+
layui.each(res.data, function (index, item) {
html += '';
html += '[' + item.uid + '] ';
+ html += '[' + item.id + '] ';
html += '[' + item.create_time + '] ';
html += '[' + item.level.toUpperCase() + '] ';
html += item.content;
@@ -36,44 +43,75 @@ $(function () {
});
var oldScrollHeight = $logContainer[0].scrollHeight;
- $logContainer.prepend(html);
+
+ if (order === 'desc') {
+ $logContainer.prepend(html);
+ } else {
+ $logContainer.append(html);
+ }
+
var newScrollHeight = $logContainer[0].scrollHeight;
if (isFirstPage) {
- // 首次加载,滚动到底部
- $logContainer.scrollTop(newScrollHeight);
+ // 首次加载,倒序滚动到底部,正序滚动到顶部
+ $logContainer.scrollTop(order === 'desc' ? newScrollHeight : 0);
} else {
// 加载更多,保持滚动位置
- $logContainer.scrollTop(newScrollHeight - oldScrollHeight);
+ if (order === 'desc') {
+ $logContainer.scrollTop(newScrollHeight - oldScrollHeight);
+ }
}
page++;
} else {
noMoreData = true;
- $logContainer.prepend('- The Beginning -
');
+ var endText = order === 'desc' ? '- The Beginning -' : '- The End -';
+ var endHtml = '' + endText + '
';
+ if (order === 'desc') {
+ $logContainer.prepend(endHtml);
+ } else {
+ $logContainer.append(endHtml);
+ }
}
}, function () {
// complete
});
}
+ function reloadLogs() {
+ page = 1;
+ noMoreData = false;
+ $logContainer.empty();
+ loadLogs();
+ }
+
// 初始加载
loadLogs();
// 监听滚动事件
$logContainer.on('scroll', function () {
var $this = $(this);
- // 滚动条到顶部时加载更多
- if ($this.scrollTop() === 0) {
+ // 滚动条到顶部时(倒序)或到底部时(正序)加载更多
+ if ((order === 'desc' && $this.scrollTop() === 0) ||
+ (order === 'asc' && $this.scrollTop() + $this.innerHeight() >= $this[0].scrollHeight - 1)) {
loadLogs();
}
});
+ // 监听排序方式选择
+ layui.form.on('select(order-select)', function (data) {
+ order = data.value;
+ reloadLogs();
+ });
+
+ // 监听排序字段选择
+ layui.form.on('select(sort-select)', function (data) {
+ sortField = data.value;
+ reloadLogs();
+ });
+
// 监听刷新按钮
ua.listen.refresh(function () {
- page = 1;
- noMoreData = false;
- $logContainer.empty();
- loadLogs();
+ reloadLogs();
});
});
\ No newline at end of file