Skip to content

Commit f0ede89

Browse files
committed
fix: 生成默认config
1 parent c2e2b5e commit f0ede89

File tree

2 files changed

+12
-2
lines changed

2 files changed

+12
-2
lines changed

components/config.js

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import fs from 'fs'
2-
import { _CfgPath } from '../data/system/pluginConstants.js'
2+
import { _CfgPath, _DataPath } from '../data/system/pluginConstants.js'
33
import kuroLogger from './logger.js'
44

55
class ConfigReader {
@@ -11,6 +11,10 @@ class ConfigReader {
1111

1212
readConfig() {
1313
try {
14+
if (!fs.existsSync(this.filePath)) {
15+
const defaultConfigPath = _DataPath + '/system/default_config.json'
16+
fs.writeFileSync(this.filePath, fs.readFileSync(defaultConfigPath), 'utf8')
17+
}
1418
const data = fs.readFileSync(this.filePath, 'utf8')
1519
const configObject = JSON.parse(data)
1620
return configObject

components/logger.js

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ import fs from 'fs'
33
import path from 'path'
44
import { dataPath } from '../data/system/pluginConstants.js'
55
import config from './config.js'
6+
import { sleepAsync } from '../model/utils.js'
67

78
class Logger {
89
constructor(
@@ -104,7 +105,12 @@ class Logger {
104105
}
105106

106107
// 初始化全局日志记录器实例
107-
const kuroLogger = new Logger(config.getConfig().logger.logLevel || 'info')
108+
const kuroLogger = new Logger(config.getConfig()?.logger?.logLevel || 'info')
108109
logger.info(chalk.gray(`[库洛插件][LOGGER] Logger initialized!`))
109110

111+
while (typeof kuroLogger === 'undefined' || !(kuroLogger instanceof Logger)) {
112+
// 类尚未初始化,可以加入适当的延时以避免阻塞主线程
113+
// 例如:使用 setTimeout 或其他方式
114+
sleepAsync(100)
115+
}
110116
export default kuroLogger

0 commit comments

Comments
 (0)