开发手册:启动器:home

差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录 前一修订版
后一修订版
前一修订版
开发手册:启动器:home [2017/03/04 00:38] 蛋散开发手册:启动器:home [2017/03/27 15:38] (当前版本) – [技术要求] 蛋散
行 1: 行 1:
-====== 启动器 ======+====== 客户端 ======
 ===== 技术要求 ===== ===== 技术要求 =====
-参与启动器开发,可能需要你掌握下面的技术 +参与客户端开发,可能需要你掌握下面的技术
-  - JavaScript+
   - nodejs   - nodejs
   - vue   - vue
-  - html 
   - electron   - electron
   - typescript   - typescript
 +  - JavaScript (ES6)
 +  - gulp
  
-如果你需要建windows包,你需要windows+===== 架图 ===== 
 +{{:开发手册:启动器:客户端架构示意图.png|}}
  
-如果你需要构建macos包你需要macos+==== 简单用文字叙述 ==== 
 +客户端分为两个部分安装器和启动器
  
-本项目采用electron开发使electron-packager打包具体法请阅它们github+下文中启动器的asar包简称为“启动器” 
 + 
 +安装器构建出来为二进制程序包,分为windows和macos两种平台 
 + 
 +安装器其实是作为了启动器的“**运行壳子**”,用户在运行安装器之后安装器会检查在当前户电脑上是否已经安装过启动器,如果没有,就先检自己有没有更新,如果有,就自动下载并指导用户替换掉旧版安装器件。如果自己为最新,那么就去下载最新版本的启动器,下载完成后,通过重启从而直接运行启动器中的js代码,将程序控制权**转交**给启动器。 
 + 
 +可以看出来,安装器只负责在首次运行的时候检查自身更新和下载最新的启动器,当用户机器上已经安装有启动器的时候(**无论安装器自己和当前安装的这个启动器是不是最新的**),就直接运行启动器中的代码,将**运行权转交**。 
 + 
 +这么做是为了尽量减少安装器内部的代码逻辑,让大部分代码处于可以通过自动下载asar包并自动执行更新的状态(**仅仅几M流量**)。在运行权转交给启动器后,检查更新的任务就交给了启动器,安装器不再执行任何代码。 
 + 
 +那么如果你需要构建windows包,你需要装有windows的电脑 
 + 
 +那么如果你需要构建macos包,你需要装有macos的电脑
  
 ===== 开发项目 ===== ===== 开发项目 =====
-首先,从git上clone下本项目的开发分支 
  
-然后,安装所有依赖 +全局安装下面的依赖,可能需要管理员权限
-<code shell> +
-npm install +
-</code> +
- +
-注意,下面的依赖需要**全局**安装,可能需要管理员权限+
 <code shell> <code shell>
 npm install electron -g npm install electron -g
 npm install typescript -g npm install typescript -g
 npm install babili -g npm install babili -g
 +npm install gulp -g
 </code> </code>
  
-然后,编译所有的ts文件+ 
 + 
 + 
 +然后,从git上clone下安装器和启动器的分支 
 + 
 +然后,安装所有依赖
 <code shell> <code shell>
-tsc+npm install
 </code> </code>
  
-如果你熟悉typescript和他的自动编译开发,那么下面的这段你可以忽略+**下面是一些可能用到指令**
  
-<color #c3c3c3>注意,本项目使用typescript开发,我推荐你使用PHPstorm的自动编译功能将typescript编译为JavaScript,当然你也可以使用其他的工具来实现这一目标,如果你没有使用这种工具,你需要运行下面的命令来编译js</color>+自动编译文件
 <code shell> <code shell>
-tsc xxx.ts+gulp watch
 </code> </code>
-<color #c3c3c3>当然,在你每次修改ts文件之后,你都需要重新编译。</color> 
  
-现在,你可以运行项目+运行项目(调试)
 <code shell> <code shell>
-npm start+npm run start
 </code> </code>
  
  • 开发手册/启动器/home.1488559130.txt.gz
  • 最后更改: 2017/03/04 00:38
  • 蛋散