Skip to content

Commit 2f1a7db

Browse files
committed
fix: 细节修复
1 parent d2c52e0 commit 2f1a7db

File tree

4 files changed

+41
-12
lines changed

4 files changed

+41
-12
lines changed

frontend/src/layout/DialogLike.vue

Lines changed: 26 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -125,20 +125,38 @@
125125
<el-tab-pane label="目录" name="folder">
126126
<div class="item">
127127
<div class="label">
128-
<el-popover content="选择后,启动时将默认打开该目录" placement="top" :width="150">
128+
<el-popover content="选择后,启动时将自动打开该目录" placement="top" :width="150">
129129
<template #reference>
130130
<el-icon><Warning /></el-icon>
131131
</template>
132132
</el-popover>
133-
<div class="t">默认打开</div>
133+
<div class="t">自动打开</div>
134134
</div>
135135
<div class="value">
136-
<el-select v-model="cfg.folderDefOpen" size="small" clearable placeholder="启动时默认打开某个目录">
136+
<el-select v-model="cfg.folderDefOpen" size="small" clearable placeholder="启动时自动打开某个目录">
137137
<el-option v-for="item in user.cfg.dir" :key="item" :label="item" :value="item" />
138138
</el-select>
139139
</div>
140140
</div>
141141

142+
<template v-if="cfg.folderDefOpen">
143+
<div class="item">
144+
<div class="label">
145+
<el-popover content="开启后,从文件列表直接操作文件时将不会自动打开上方设置的目录" placement="top" :width="200">
146+
<template #reference>
147+
<el-icon><Warning /></el-icon>
148+
</template>
149+
</el-popover>
150+
<div class="t">打开文件时关闭</div>
151+
</div>
152+
<div class="value">
153+
<el-switch v-model="cfg.folderNotOpenInQuery" />
154+
</div>
155+
</div>
156+
157+
<div class="line"></div>
158+
</template>
159+
142160
<div class="item">
143161
<div class="label">
144162
<div class="t">隐藏前缀文件</div>
@@ -225,6 +243,11 @@ watch(cfg, user.update, { deep: true })
225243
}
226244
}
227245
}
246+
247+
> .line {
248+
height: 1px;
249+
background-color: var(--el-border-color);
250+
}
228251
}
229252
}
230253
}

frontend/src/layout/DialogOpen.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@
5050
<div class="t">我的目录</div>
5151

5252
<el-select v-model="cfg.folderDefOpen" size="small" clearable style="width: 200px" placeholder="选择目录">
53-
<el-option-group label="启动时默认打开">
53+
<el-option-group label="启动时自动打开">
5454
<el-option v-for="item in user.cfg.dir" :key="item" :label="item" :value="item" />
5555
</el-option-group>
5656
</el-select>

frontend/src/layout/ViewMenu.vue

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,15 +29,13 @@ import { onMounted } from 'vue'
2929
import { Folder, Timer, Notification, Setting } from '@element-plus/icons-vue'
3030
3131
import { useMenuStore } from '@/store/menu'
32-
import { useUserStore } from '@/store/user'
3332
import { useLikeStore } from '@/store/like'
3433
3534
const menu = useMenuStore()
36-
const user = useUserStore()
3735
const like = useLikeStore()
3836
3937
onMounted(() => {
40-
if (user.cfg.folderDefOpen) {
38+
if (like.cfg.folderActive) {
4139
menu.toggle('folder')
4240
}
4341
})

frontend/src/store/user.ts

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -29,12 +29,15 @@ interface LikeModel {
2929

3030
// 目录
3131
dir: string[] // 文件列表
32-
folderDefOpen: string // 默认开启目录
32+
folderDefOpen: string // 自动打开目录
33+
folderNotOpenInQuery: boolean // 打开文件时不打开目录
3334
folderHidePrefix: string[] // 隐藏的文件前缀
3435
}
3536

3637
const USER_CONFIG_PATH = `${APP_DIR_PATH}/config.json`
3738

39+
const dir = IS_DEV ? ['/Users/flex/Downloads'] : ['/vol1/1000']
40+
3841
const getDef = (): LikeModel => ({
3942
// 全局配置
4043
theme: 'vs-dark', // 主题
@@ -55,8 +58,9 @@ const getDef = (): LikeModel => ({
5558
},
5659

5760
// 目录
58-
dir: IS_DEV ? ['/Users/flex/Downloads'] : ['/vol1/1000'],
59-
folderDefOpen: '', // 默认开启目录
61+
dir: [...dir],
62+
folderDefOpen: dir[0]!, // 自动打开目录
63+
folderNotOpenInQuery: true, // 打开文件时不打开目录
6064
folderHidePrefix: ['.'], // 隐藏的文件前缀
6165
})
6266

@@ -83,7 +87,11 @@ export const useUserStore = defineStore('user', () => {
8387
cfg.value = Object.assign(cfg.value, cloneDeep(result1) as LikeModel)
8488
}
8589

86-
like.cfg.folderActive = cfg.value.folderDefOpen || cfg.value.dir[0] || ''
90+
const query = new URLSearchParams(window.location.search).get('path') || ''
91+
92+
if ((!query || !cfg.value.folderNotOpenInQuery) && cfg.value.folderDefOpen) {
93+
like.cfg.folderActive = cfg.value.folderDefOpen
94+
}
8795

8896
initialized.value = true
8997
}
@@ -94,7 +102,7 @@ export const useUserStore = defineStore('user', () => {
94102
{
95103
encode: 'utf8',
96104
path: USER_CONFIG_PATH,
97-
value: JSON.stringify(cfg.value),
105+
value: JSON.stringify({ ...cfg.value, folderDefOpen: cfg.value.folderDefOpen || '' }),
98106
force: 1,
99107
},
100108
{

0 commit comments

Comments
 (0)