# gitlab-dashboard-electron **Repository Path**: mobilefzb/gitlab-dashboard-electron ## Basic Information - **Project Name**: gitlab-dashboard-electron - **Description**: 一个展示 gitlab ui 信息的客户端程序。 - **Primary Language**: JavaScript - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2019-01-09 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # gitlab-dashboard-electron #### Description 一个展示 gitlab ui 信息的客户端程序。 #### 开发中的问题整理 --- #### `2019-01-10` > 参考这个[文档](https://www.jianshu.com/p/ae85bab67d24)来集成 `sqlite3`, 其中有个细节就是命令 rebuild: ```bash .\node_modules\.bin\electron-rebuild.cmd -f -w sqlite3 -v 4.0 ``` > 因为当前的 electron 版本已经到了 4.0.1 所以为了保证生成的目录匹配需要这样指定版本。 --- #### `2019-01-22` > 根据一些调查发现 sqlite3 这个包的实现有一些坑: >   `如果是使用 run 方法来查询数据,即使是全量的查询也只会返回一条数据。` >   `如果要返回所有的数据,需要使用 each 这个方法。` --- #### `2019-02-12` >   在 ubuntu 18.04 上尝试 build 这个项目,发现 electron-rebuild 出来的 sqlite3 无法兼容当前 18.04 下安装的 node (v8.10)。 这样导致启动的时候报错: ![avatar](pics/2019-02-12-bug.png)   调整了下 [package_install.sh](package_install.sh) 的安装顺序。结果发现还是有问题。关键应该在于 `electron-rebuild` 那一步,这个表明这个 rebuild 出来的包使用的 node 是比较老的。   还有就是 `electron-prebuilt` 这个似乎也不需要了,从报错来看应该被集成到 electron 的内部去了。   再次尝试了重新打包的步骤,成功了,记录一下: > * 设置好 http 代理,使其不能有网络连接障碍。 > * 使用如下的 [package.json](package.json) 这个版本只保留 electron-rebuild 和 sqlite3,同时将 electron 移动到 devDependencies 这个结构中去。 > * 执行 `npm --proxy http://127.0.0.1:8118 install` > * 执行 `./node_modules/.bin/electron-rebuild -f -w sqlite3 -v 4.0` > * 执行 `./node_modules/.bin/electron-rebuild --dev` > >   完成上述步骤后,可以正常运行项目。 --- #### `2019-02-16` >   解决数据库的读写问题,关键在于 javascript 的字典的 key 不能使用变量,会被直接解析为变量名的 key。还有是在 for 循环中使用 db.get 方法的问题,似乎需要用一个函数封装下调用才好。