Skip to content

Commit d1eeb7f

Browse files
committed
依赖检测和提示
1 parent e82aec8 commit d1eeb7f

File tree

4 files changed

+23
-4
lines changed

4 files changed

+23
-4
lines changed

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,4 +54,5 @@ index/
5454
/group
5555
/platform
5656
/.air.toml
57-
/tmp
57+
/tmp
58+
!package.json

package.json

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
{
2+
"name": "bookstack",
3+
"version": "1.0.0",
4+
"description": "puppeteer 依赖处理",
5+
"dependencies": {
6+
"puppeteer": "^22.8.0"
7+
}
8+
}

utils/dependency.go

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -78,14 +78,21 @@ func checkInstalledDependencyData() {
7878
Name: namePuppeteer,
7979
IsInstalled: err == nil,
8080
Error: errPuppeteer,
81-
Message: "puppeteer, node.js的模块,用于将markdown渲染为HTML以及生成电子书封面。 <a class='text-danger' target='_blank' href='https://www.bookstack.cn/read/help/Ubuntu.md'>安装教程</a>",
81+
Message: "node.js的模块,用于将markdown渲染为HTML以及生成电子书封面。 <a class='text-danger' target='_blank' href='https://www.bookstack.cn/read/help/Ubuntu.md'>安装教程</a>",
8282
CheckedAt: time.Now().Format(dateLayout),
8383
})
8484
}
8585

8686
// IsInstalledPuppetter 是否安装了puppeteer
8787
func IsInstalledPuppetter() (err error) {
88-
_, err = ExecCommand("npm", []string{"ls", "puppeteer"})
88+
// 检测全局是否安装了puppeteer
89+
_, err = ExecCommand("npm", []string{"ls", "-g", "--depth=0", "puppeteer"})
90+
if err == nil {
91+
return
92+
}
93+
94+
// 检测项目是否安装了puppeteer
95+
_, err = ExecCommand("npm", []string{"ls", "--depth=0", "puppeteer"})
8996
return
9097
}
9198

views/manager/index.html

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,10 @@
8282
</div>
8383
<div>
8484
<table class="table table-bordered table-hover ">
85-
<caption>依赖检测</caption>
85+
<caption>
86+
<div class="alert alert-warning">【chrome】和【puppeteer】两个依赖必须至少安装一个,否则无法使用【拷贝书籍】和【导入书籍】的功能!!!推荐安装puppeteer。</div>
87+
<div>依赖检测</div>
88+
</caption>
8689
<thead>
8790
<tr>
8891
<th class="min-width">名称</th>

0 commit comments

Comments
 (0)