Xone在Node.js上为您提供了轻巧的完整堆栈环境,可为每种用途(基于HTML5和JavaScript)开发精美的应用程序,并使通用代码库最佳地集成到广泛的系统中(例如移动设备,平板电脑,桌面,浏览器,浏览器环境)。
Xone将获得一些重大变化。这是为即将到来的功能打开我们现在像Xone Natival一样工作的功能。该计划是发布最终体系结构,直到v.1.0.0,然后在大多数破裂更改中完成。

asyncpaintpromisequeuestackasaprun (伪线程跑步者实例)APP.CONTROLLER[name] → new Controller(name)或Controller.new(name)APP.VIEW[name] → new View(name)或View.new(name)APP.EVENT[query] → new Event(query)或Event.new(query)APP.ROUTE[route] → new Route(route)或Route.new(route)APP.MAPPER[name] →现在是视图,模型和/或路由的一部分(请参阅:查看映射,模型映射,有效载荷映射)APP.MODEL[name] → new Model(name)或Model.new(name)APP.WORKER[name] → new Worker(name)或Worker.new(name)APP.HANDLER →您可以自由使用任何样式(例如以前)APP.HELPER →您可以自由使用任何样式(例如以前)APP.SETTING.get(key) → Setting.get(key)APP.PLUGIN.Filesystem → FilesystemCORE.* → Util.{Package}.* Util.Array.merge
这些功能现在将被弃用(不支持):
基本上,Xone具有易于学习的高级界面,而无需您像对Angular或React一样实现任何低级“框架”代码。这也为您的代码库提供了巨大的灵活性,以实现即将到来的技术,端口或任何其他重大更改。
Xone基本上有3种不同的版本:
xone create创建的初始项目| 默认情况下的功能 | Xone项目(环境) | Xone Bundle(独立) | Xone库(独立) |
|---|---|---|---|
| 最终项目文件 | 最小 | 小的 | 普通的 |
| 核心库 | |||
| MVC框架 | |||
| 渲染引擎 | |||
| 单位测试 | - | - | |
| 调试工具 | - | ||
| 环境 | - | - | |
| 全局应用程序配置 | - | ||
| 构建/编译项目 | - | ||
| 管理平台 | - | - | |
| 动态模板(HTML> JSON) | - | - | |
| 依赖管理 | - | - | |
| 初始代码库 | - | - | |
| CLI工具 | - | - | |
| 支持关闭编译器高级模式 | - | ||
| 删除死亡代码 | - | ||
| 不严格受到惯例的约束 | - | ||
| 不需要node.js | - | ||
| 用作独立库(例如jQuery/下划线) | - | ||
| 用作框架(例如Bootstrap/Angular) | - | ||
| 用作开发环境(例如sencha/流星) | - | - |
> npm install -g xone注意:要使Xone CLI全球可用,您必须将XONE作为全局NPM模块安装(如果您想尽可能多地保持简单的话,也需要任何本地安装)。您还可以使用Xone的本地自定义版本以及使用CLI而无需任何全局安装(进一步阅读)。
注意: Xone Project Binaries通常必须通过“ Xone Create”或“ Xone install”安装,并带有其自己的预定义文件夹结构(随后是一些约定)。您可以选择选择两个独立版本之一,以跳过尽可能多的约定(例如,Xone的作用像外部JavaScript插件)。
或者,在项目的根部,您可以将本地CLI快捷应用程序改为Xone ,例如:
my_project > app build注意:在快捷键应用程序上,创建和安装选项都不可用。
在Linux机器上,您可能会使用:
sudo npm install -g xone如果未正确注册全局“ Xone”标识符,请尝试以下一条线:
hash xone
hash -r另外,您可以使用本地CLI后备以:
bash xone build在目录工作区/my_project中创建一个新项目:
workspace > xone create my_project作品,但通常不建议在项目文件夹名称中使用Whitespaces:
workspace > xone create " my project "进一步阅读
要更新一个已经存在的项目的Xone,您基本上需要2个步骤:
> npm install -g xoneworkspace/my_project > xone install注意:这不会覆盖您的任何项目文件!仅在App/Lib/Xone//Xone/中更新项目Xone库文件。
进一步阅读
未编译的来源位于: workspace/my_project/app/*
my_project > xone build生产构建位于:工作区/my_project/public/www/*
注意:我们建议将生产构建用于任何外部/公共版本,并仅将这些来源用于开发,测试以及可能其他内部用途。要跳过Xone的构建集成,您必须使用独立版本。
my_project > xone server打开您首选的Webrowser和goto'http:// localhost/app/'或'http:// http:// localhost/public/www/'
您可以选择通过自定义主机和端口:
my_project > xone server localhost 8080打开您喜欢的Webrowser和Goto'http:// localhost:8080'
在您喜欢的浏览器中,从来源或public/www/index.html打开app/index.html 。
使用位于Workspace/My_project/public/*的生产构建,以向基于Cordova的项目或上传到网络服务器。
Xone提供自定义平台注射以执行平台特定的生产构建。因此,所有这些构建仅包含其相关平台的必要代码和依赖项。
显示当前定义的平台:
my_project > xone platform执行平台特定的汇编:
my_project > xone compile android编译的文件保留在:工作区/my_project/app/*中
执行平台特定的构建:
my_project > xone build android构建目的地:工作区/my_project/public/android/*
您可以添加无限制的自定义平台,例如创建一个平台“ WebApp”:
my_project > xone platform add webapp
my_project > xone build webapp构建目的地:工作区/my_project/public/webapp/*
my_project > xone build bundle构建目标:工作区/my_project/app/lib/xone/dist/xone.bundle.js
my_project > xone build lib构建目标:工作区/my_project/app/lib/xone/dist/xone.lib.js
my_project > xone build lib min ./app/js/构建目标:工作区/my_project/app/js/xone.lib.min.js
注意:实际上无法更改传递参数的顺序。
<!DOCTYPE html >
< html >
< head >
< meta charset =" UTF-8 " >
</ head >
< body >
<!-- END_OF_BODY -->
<!-- LOAD XONE: -->
< script src =" js/xone.lib.min.js " > </ script >
<!-- YOUR APP CODE: -->
< script src =" js/app.js " > </ script >
</ body >
</ html >Xone Build使用Google Closture编译器。所有Xone库还支持“高级模式”的汇编。可以在xone.json中配置构建属性。封闭式编译器还提供了一个简单的依赖管理系统(提供/要求),您应该使用来改善删除死亡代码。
注意:实际上,Xone支持2个不同版本的闭合编译器:1。需要Java,2。需要JavaScript(Node)。建议在计算机上正确安装Java(JRE),以解锁闭合编译器Java版本的一些好处。要更改编译器的类型,您需要将字段
closure_compiler_lib_type从"js"更改为xone.json中的"jar"。
注意:如果您在闭合编译器方面的经验较少,则可以选择将编译级别设置为Xone Config File中的字段
closure_compiler_level在“简单”中。
| 默认情况下的功能 | 闭合编译器(Java) | 闭合编译器(JavaScript) |
|---|---|---|
| 依赖管理 | ||
| 自动排序依赖性 | - | |
| “严格”依赖项(入口点) | - | |
| “漂亮的印刷”汇编 | - | |
| 建立性能 | 普通的 | 慢的 |
| 压缩比 | 最好的 | 好的 |
| 记忆消耗 | 普通的 | 极端 |
my_project > xone docs文档将在“文档/API/”中生成。
默认环境是:
更改app/manifest.js中的环境:
"env" : " development " ,
"platform" : " www "或仅在URL中添加参数:
http://localhost:9000/? env =test& platform =android& debug =true注意:您还可以分别通过传递URL参数来覆盖任何
CONFIG属性。
显示当前定义的环境:
my_project > xone env添加自定义环境:
my_project > xone env add offline构建目标:工作区/my_project/app/config/offline.js