From 24520bcf0ff59c0f6c9417735255c63a36962a35 Mon Sep 17 00:00:00 2001
From: Frost-ZX <30585462+Frost-ZX@users.noreply.github.com>
Date: Tue, 6 Apr 2021 20:51:00 +0800
Subject: [PATCH] =?UTF-8?q?=E5=8A=A0=E5=85=A5=E5=B0=8F=E5=B7=A5=E5=85=B7?=
=?UTF-8?q?=E5=88=97=E8=A1=A8?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/views/Tools.vue | 149 +++++++++++++++++++++++++++++++++++++++++++-
1 file changed, 147 insertions(+), 2 deletions(-)
diff --git a/src/views/Tools.vue b/src/views/Tools.vue
index 1ca6849..b0f9d49 100644
--- a/src/views/Tools.vue
+++ b/src/views/Tools.vue
@@ -1,6 +1,25 @@
+
+
+
+
+
+
+
+
+
@@ -9,17 +28,143 @@ export default {
name: 'Tools',
data() {
return {
- utils: this.$root.utils
+ utils: this.$root.utils,
+ detail: {
+ show: false,
+ title: ''
+ },
+ toolList: {
+ 'calcDownloadTime': {
+ title: '计算下载用时',
+ desc: '根据设定的文件大小和下载速度简单计算大约下载完成所需的时间'
+ },
+ 'genLinks': {
+ title: '生成批量下载链接',
+ desc: '根据设置,生成有一定规律的用于批量下载的链接'
+ },
+ 'genRandomStr': {
+ title: '生成随机字符串',
+ desc: '生成随机组合的字符串,可用于密码'
+ },
+ 'newWindow': {
+ title: '新窗口(小窗)中打开'
+ },
+ 'runjs': {
+ title: '执行 JavaScript'
+ },
+ 'simpleCalc': {
+ title: '简易计算'
+ },
+ 'timestampConvert': {
+ title: 'Unix 时间戳转换',
+ desc: 'Unix 时间戳转时间 / 时间转 Unix 时间戳'
+ },
+ }
};
},
+ methods: {
+ // 打开工具
+ openDetail(toolName) {
+ // 当前工具信息
+ var info = this.toolList[toolName];
+
+ // 若不存在
+ if (info === undefined) {
+ console.log('[打开工具] 不存在该工具:' + toolName);
+ return;
+ }
+
+ // 更新页面标题
+ this.utils.changeTitle(info.title);
+ // 更新 drawer 标题
+ this.detail.title = info.title;
+ // 路由跳转
+ this.$router.push({
+ name: 'ToolsDetail',
+ query: {
+ name: toolName,
+ title: info.title
+ }
+ });
+ // 显示 drawer
+ this.detail.show = true;
+ },
+ // 关闭工具
+ closeDetail(done) {
+ this.$confirm('是否关闭?').then(() => {
+ // 关闭 drawer
+ done();
+ // 路由跳转
+ this.$router.push({
+ name: 'Tools'
+ });
+ // 更新页面标题
+ this.utils.changeTitle('小工具');
+ }).catch(() => { });
+ }
+ },
beforeRouteEnter(to, from, next) {
next(vm => {
- vm.utils.changeTitle('小工具');
+ // 判断进入的路由
+ if (vm.$route.name == 'ToolsDetail') {
+ // 进入:工具内容页面
+ vm.openDetail(vm.$route.query.name);
+ } else {
+ // 进入:工具列表页面
+ vm.utils.changeTitle('小工具');
+ }
});
}
}