gistfile1.txt http://ionicframework.com/docs/cli/commands.htmlInstallation -g要加上 不然ionic指令可以无法在命令行识别$ npm install -g angular-cli$ npm install -g ionic$ ionic start myNewProject$ cd ./myNewProject$ ionic ser
http://ionicframework.com/docs/cli/commands.html Installation -g要加上 不然ionic指令可以无法在命令行识别 $ npm install -g angular-cli $ npm install -g ionic $ ionic start myNewProject $ cd ./myNewProject $ ionic serve ionic generate 生成管道,组件,页面,指令,提供程序和选项卡(ionic-angular> = 3.0.0) $ ionic generate [] [ ] type 该类型的发电机(例如component,directive,page,pipe,provider,tabs) name 正在生成的组件的名称 --no-module 不要为组件生成一个NgModule --constants 为惰性页面生成一个页面常量文件 例子 $ ionic generate $ ionic generate component $ ionic generate directive $ ionic generate page $ ionic generate pipe $ ionic generate provider $ ionic generate tabs $ ionic generate component foo $ ionic generate page Login $ ionic generate page Detail --no-module # 实用 $ ionic generate page About --constants # 实用 $ ionic generate pipe MyFilterPipe 说明: ionic g directive myDirective # 我们的应用程序可以在任何元素上使用的修饰符属性. # Results: √ Create app/components/my-directive/my-directive.ts my-directive.ts: import {Directive} from '@angular/core'; @Directive({ selector: '[my-directive]' // Attribute selector }) export class MyDirective { constructor() { console.log('Hello World'); } } ionic g provider userService # 现在创建一个新的服务(提供者),提供者负责处理数据的REST API的连接,本地存储,SQLite的等等 # Results: √ Create app/providers/user-service/user-service.ts user-service.ts: import {Injectable} from '@angular/core'; import {Http} from '@angular/http'; import 'rxjs/add/operator/map'; @Injectable() export class UserService { data: any = null; constructor(public http: Http) { } load() { if (this.data) { } return new Promise(resolve => { this.http.get('path/to/data.json') .map(res => res.json()) .subscribe(data => { this.data = data; resolve(this.data); }); }); } } ionic g pipe myPipe # 对任何数据使用我们的模板,如以大写字母显示文本,显示货币值,日期格式等。 # Results: √ Create app/pipes/myPipe.ts myPipe.ts: import {Injectable, Pipe} from '@angular/core'; @Pipe({ name: 'my-pipe' }) @Injectable() export class MyPipe { transform(value: string, args: any[]) { value = value + ''; // make sure it's a string return value.toLowerCase(); } } 启动一个本地的server,在浏览器中打开,并可监视文件变化,随时刷新浏览器。 ionic serve [options] 在浏览器中打开ios和andriod的显示界面 ionic serve --lab 指明一个外部的ip地址,可以让外部用户查看。 ionic serv --address 192.168.89.1 添加目标平台 ionic platform add ios/android 构建平台 ionic build ios/android 使用模拟器模拟ios,该命令等价于: ionic run ios ionic emulate ios [options] //ionic run ios [options] 使用模拟器或设备运行应用。 options的选项包括: -l //livereload, 实时刷新变化。 -c //打印app里的console -s //打印设备的console -p //指定设备的端口 -i //指定livereload的重刷端口 --debug //debug --release //release 当处于livereload模式时,使用r重启客户端,使用 g your_url 跳转到指定url, 使用c启动或关闭console,使用s启动或关闭设备的console, 使用q退出。 可以在主目录下的ionic.project文件的watchPatterns中配置要监视的文件夹。如: { "name": "", "app_id": "", "watchPatterns": [ "", "" ] } ionic会将本地的资源文件(支持png、psd和ai,尺寸越大越好)上传到它的服务器进行处理。 本地资源文件放到resources目录下,如果是某个平台单独的资源,可以放到对应平台下,比如resources/android/icon.png。 这样就会把处理好的资源自动放到该平台下,而不是所有平台都放。 ionic resources [--splash] [--icon] 该命令上传自己的项目到ionic服务器,上传完成后会有一个项目编号。 安装Ionic View的app,使用ionic的账号登录进去,可以查看自己的项目。 也可以直接登录ionic的app网站,下载其他平台的app。 ionic upload 查看系统情况 ionic info 安卓自带浏览器性能不好,可以安装一个壳(crosswalk),这将安装一个Chromium内核。 ionic browser add crosswalk # 可以加这个。。 查看可用的browser ionic browser list 删除安装的browser ionic browser revert android/ios 先删除平台和插件,再安装package.json文件中的平台和插件。 ionic state reset 首先查看的平台,并保存名称和package.json下cordovaplatforms属性。 然后查看fetch.json文件,保存cordova插件注册表,本地安装的插件,以及从GitHub或远程HTTP URL远程插 ionic state save 先删除平台和插件,然后按照package.json文件中包含的平台和插件重新安装。 ionic state clear