非常偶然的机会看到了electron,然后一想我们社区正好还没pc的客户端,于是兴趣一来就在业余时间搞了一下。
项目是用webpack+react开发,采用了的组件库 material-ui,后面跟原生交互使用了node-notifier,实现系统消息推送。
先来看几张预览图:
总的来说原生的体验还可以,就是发帖的MarkDown编辑器功能太弱,这个暂时也没时间去造轮子,用的是 react-markdown-editor,稍微在他的基础上增加了几个方法。这个以后有时间改进。
这边比较中意的就是material-ui,他完全是对组件化的一种实践,很高大上。我基本就是组合组合,然后调取下api。这方面前端的伙伴们可以多研究研究,感觉是一种趋势。以后做项目会很方便,重用性很高,因为页面逻辑和样式都放在一块,随取随用。
react方面也可以用来搞native,学好这一种可以做很多事。十分赞。
electron 打包的时候遇到了一些坑,官方asar打的包没有任何读写权限,导致系统推送没法用,后来干脆不打包直接暴露前端部分,正式去开发一个产品的时候最好给重要的文件加上密,我这边就只存了用户的cnode社区的信息,主要的就是accesstoken,这个accesstoken验证需要手书,在pc端不像app那样很方便的可以扫码。不过好在输入一次就可以了。项目缺陷很多,希望小伙伴们勿喷,只是给大家提供一个用前端技术构建桌面应用的参考。
代码地址: cnode-electron
打包后win7 64 位下载 cnode-electron-win64
打包后mac 64 位下载 cnode-electron-mac
希望小伙伴们给与加星奖励- -
精华
使用electron打包的cnode pc 客户端
19 回复