Ionic2探索始篇

本文主要是以Ionic2官网的文章基础,总结出自己的学习感悟

Ionic2框架及其各部分

Ionic2

Ionic 2 专注于以标准的 HTML 、 CSS 和 JavaScript 来构建移动站点,并可以通过 Cordova 打包成移动 App,只需编写一次代码,就可以分别部署到 iOS 、Android 等多种移动平台上。这项技术已经帮助很多开发者创建了很多漂亮的 App。现在 Ionic 2 已经发布了第二代版本,使移动开发更容易、更有效率。--Ionic2 gitbook

其实本质来说Ionic2其实就是伴随angular产出的前端UI框架,它集成了cordova使它的一些组件可以是用原生的能力(说白了就是在cordova的组件上又自己封装了一层,让自己的native组件能够使用更多平台的能力比如各个平台的蓝牙功能、wife、指纹、手机信息、相机等功能),总体来说还是一款非常优秀的框架、可以说特别开发混合APP最快的框架之一(为什么说是最快的呢,后面会给大家介绍它开发页面快在什么地方)。在后续的版本Ionic3已经推出,体积更小并且使用了AOT预编译+懒加载、同时也支持的服务端渲染。Ionic3和2版本的差别不是很大,基本是沿着2版本衍生的。所以我们学习了2版本的基本3版本也差不多没问题了。

angular

Ionic2框架所用的angular版本是4.x的版本,现在流行的web框架有三家的:vue、react、angular,vue相对这三大流行的框架中是最轻量级的web前端框架,目前由尤雨溪大神及其团队在维护。react相遇来说已经成熟了,但是react官方团队只维护react框架其他的并没有过多的维护,一些重要的库还是由第三方维护。angular的版本变化比较大,angular2之后配有Typescripts简直爽的不行了,开发速度提升非常大,减少了开发中一些不必要的错误,同时angular也引入了react思想-->虚拟DOM。

Ionic2-UI框架

加入了bootstrop的栅格系统和流式布局,写好了一套布局组件,基于这套组件可以快速简单的布局出一个高性能页面,剩下的和其他的UI框架差不多的一些UI组件:Alert、Buttons、loading等等。

Ionic2探索总结-1.png

上图是一个简单的Ionic2框架的轮廓图,下面就带着大家一点一点学习这几个模块。当然学习这门框架首先需要搭建环境、下面带领大家学习如何搭建环境

环境搭建

安装node.js

到node.js官网下载node.js安装包直接安装,请选择安装6.x版本的 如果安装低版本的nodejs编译的时候会报错。如果想要学习Ionic3的话安装6.9版本及其以上的。

安装 JDk &&android-SDK

这两个的安装我在这里就不多叙述了,网上关于安装这两个的东西太多了。有趣的是cordova的编译版本还在JDk1.6。

安装Ionic2&&cordova

npm install -g cordova@6.5.0 ionic@2.2.2

说明一下为什么要控制一下版本,如果不控制版本的话会直接升级到ionic3上去,我们暂时看ionic2毕竟ionic官方版本出的太快文档跟不上版本

初始化项目

在命令行后面加-v2 或者-v1分别代表着Ionic2和Ionic1项目

初始化空白项目

  ionic start myApp blank

初始化带有tabs页面空白的项目

  ionic start myApp tabs

初始化带有侧边栏的项目

  ionic start myApp sidemenu 

我选择第二个命令创建项目

运行项目

   cd myApp
   ionic serve

开启Ionic服务,开启打包处理。处理完毕后Ionic自动开启浏览器访问localhost:8100,此时便可以看到Ionic2项目

真机测试

android

首先连接手机,安卓手机的话找到开发者选项 选择 开启开发者选项 再选择下面的 USB调试 当弹出是否容许USB调试选择确定即可

到项目根目录下

   ionic run android

ios

到项目根目录下

   ionic build ios

打开Xcode 选择连接的ios设备 run 即可打包到ios手机

分析一下目录

.
├── config.xml          @1
├── hooks
│   └── README.md       @2
├── ionic.config.json   @3
├── package.json        @4
├── platforms
│   ├── ios             @5
│   └── platforms.json  
├── plugins             @6
├── resources           @7
├── src
│   ├── app
│   │   ├── app.component.ts   
│   │   ├── app.html
│   │   ├── app.module.ts    @8
│   │   ├── app.scss
│   │   └── main.ts          @9
│   ├── assets
│   │   └── icon
│   │       └── favicon.ico
│   ├── index.html
│   ├── manifest.json
│   ├── pages
│   │   ├── about
│   │   │   ├── about.html
│   │   │   ├── about.scss
│   │   │   └── about.ts
│   │   ├── contact
│   │   │   ├── contact.html
│   │   │   ├── contact.scss
│   │   │   └── contact.ts
│   │   ├── home
│   │   │   ├── home.html
│   │   │   ├── home.scss
│   │   │   └── home.ts
│   │   └── tabs
│   │       ├── tabs.html
│   │       └── tabs.ts
│   ├── service-worker.js
│   └── theme
│       └── variables.scss
├── tsconfig.json            @11
├── tslint.json              @12
└── www

对比上面的tree后面的@表示解释编号

  1. config.xml ionic项目的配置文件包括:项目的名字、介绍、作者、与远端通信权限、不同平台的图标适配、引入的插件等的配置。
  2. 说明。
  3. 这个文件表示ionic项目使用的版本是多少、是否启用typescripts。
  4. ionic项目的包管理文件。
  5. 新建项目默认加入ios平台,其他的平台需要用命令行加入。
  6. 插件文件(这个后续再讲。
  7. 图片文件夹。
  8. angular的跟模块文件
  9. 入口编译的ts文件
  10. 主页
  11. 编译ts文件的配置文件
  12. ts文件静态语法检查的配置文件

总结

基本的介绍就到这里了,后面的文章我将会介绍ionic、angular、cordova、ionic官方native组件的使用、cordova原生组件的封装等。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,772评论 6 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,458评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,610评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,640评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,657评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,590评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,962评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,631评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,870评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,611评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,704评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,386评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,969评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,944评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,179评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,742评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,440评论 2 342

推荐阅读更多精彩内容