提示:
error TS2307: Cannot find module ‘rxjs-compat/Observable’
将
import { Observable } from ‘rxjs/Observable’;
改为
import { Observable } from ‘rxjs’;
即可
提示:
error TS2307: Cannot find module ‘rxjs-compat/Observable’
将
import { Observable } from ‘rxjs/Observable’;
改为
import { Observable } from ‘rxjs’;
即可
https://github.com/CacheControl/json-rules-engine
先了解下ionic4 >>> ionic4概述
在继续使用angular开发的前提下,ionic4和ionic3还是有诸多差异,总的来说更angular了。
主要主要注意的如下:
不ionic了,以后都angular了。命名方式都用angular的了;provider也改成angular的叫法了,以后请叫service
一句话,在ionic4中,用angular的生命周期钩子,不要用以前ionic的
ionic中经典的基于NavController和ion-nav的导航方式已经被废弃了。ionic现在推荐使用angular路由
好吧,又被废弃了,推荐使用angular路由的loadChildren方法实现
总结,从新回去学angular
只需三步即可快速开始(你需要预先安装上node和git)
npm install -g ionic
ionic start myApp tabs --type=angular
cd myApp
ionic serve
ionic是一套开源UI套件。其使用web技术构建,可以用于移动端、桌面端应用开发。
跨平台
无论是android、ios还是windows、mac应用都可以使用ionic开发。
基于web标准
ionic程序使用html、css、js开发,可以调用标注的web api
简洁优雅
代码很简洁,学习很简单,开发很畅快
ionic是基于cordova(web app打包方案)的app构建方案。ionic app本质是一个web app,然后通过cordova可以打包成一个android、ios app或者桌面程序。
要说ionic4,还得说说ionic的历史版本
ionic历史版本
ionic1,使用angularjs构建
ionic2~3,使用angular构建
这里需要特别说明下,angularjs和angular是两套框架,一个团队开发的两套框架,名字类似,但完全是两套框架。angularjs使用js开发,angular使用ts开发。
ionic4,是当前最新版本,官方版本集成angular,也支持使用vue、react开发。
为啥能支持angular以外的框架?
简单说就是,ionic4将之前版本中用angular写的一些核心组件重写了,不在依赖angular了。
详细点说,之前的ionic和angular耦合性很高,所有组件都是使用angular写成的。因此你没办法再使用其他框架,只能用angular开发。但ionic4进行了重新设计,ionic构建了一套独立的web组件库(没有依赖angular),因此ionic4可以使用angular以外的框架进行开发。
能不能继续用angular开发?
当然可以,angular大法好,ts大法好,巨硬股沟大法好!
通过调用@ionic/angular包,可以使用ionic2/3所具备的所有功能。
待续
有些新手不知道其中的区别,有些装逼的人喜欢乱说,这里记录下,以后遇到新手和装逼瞎说的人方便复制粘贴。
angularjs和angular是两套框架,一个团队开发的两套框架,名字类似,但完全是两套框架。
ionic v1是用angularjs
2、3都是用的angular
ionic=cordova+angular
判断是否为iphone X的代码:
if (this.plt.is('ios')) { this.isIos = true; if ((window.screen.width == 375) && (window.screen.height == 812)) { this.isIphone = true; } }
然后使用
[ngClass]="{'iphonex': isIphonex}"
添加适配
https://github.com/willsoto/ng-chartist#installation
Ionic cordova resources
本地版:
https://www.npmjs.com/package/ionic-resources
使用<ion-refresher>后,<ion-content>中的一个<div>会被添加一个transform:0的style,导致其中内容的position:fixed失效。
解决办法:强制给div添加transform: none !important;
.fixSortable{ transform: none !important; }
this.scrollContent = this.elementRef.nativeElement.querySelector('.scroll-content'); this.renderer.addClass(this.scrollContent, 'fixSortable');