标签:
公司里要用到 Ionic 做移动App 混合开发
一个环境搭建折腾了好几天。一是公司权限问题,二是网络问题,你懂得。
Ionic 环境搭建官网有教程。本来几行命令就能搞定的事,一旦遇到网络问题,就蛋疼了。慢的要死
Ionic 框架简单了解了一下,由于是基于Anjular.js的,拥有Anjular.js的一些独有特性。比之前接触过的JS ,jQuery ,jQueryMobile要强大且方便的多。
安装ionic 框架,正常流程官网有详细介绍,如果人品较好,分分钟钟就搞好了,还有一种情况,像我这样悲催,网络问题,试了几十遍还是没成功。
好在最后用了比较给力的网,折腾一周才搞定。
mac正常流程:
1、安装Node.js。(最新版本4.1一定是集成了npm 这个包管理工具的)
2、终端上执行命令,$sudo npm install -g cordova 安装cordova
3、终端上执行命令,$sudo npm install -g ionic 安装ionic
当然你可以两行命令合在一起,$sudo npm install -g corvoda ionic
顺利的话,稍等片刻就能安装成功。接下来可以用命令行新建一个工程:
4、终端上执行命令,$ionic start myApp blank 新建一个空工程
或者$ionic start myApp tabs 新建一个带tab框架的工程
或者$ionic start myApp sidemenu 新建一个带侧边栏的工程
5、cd myApp 到工程目录下,一般工程会users/yourUserName/myApp目录下。
6、添加iOS 运行平台。$ionc platform add ios
7、build $ionic build ios
8、在iOS模拟器上运行,$ionic emulate ios 查看效果
下面简单说一下我遇到的情况:
1、安装Node.js 下载比较慢。耐心就行。
2、安装cordova.一般用npm 的源:可以用命令查看 $npm config list -l 看到一个registry=http://就能安装上,视网速而定。如果不能,在终端执行命令:$ npm set registry https://registry.npm.taobao.org
将源改为 淘宝镜像。这时corvoda一般能安装成功了。安装cordova 一般不会有太大问题。问题多出在安装ionic .
3、在不改变淘宝源的情况下,用命令试试。两个同事用的$npm 的源都没问题,如果出现ERR, retry 就是网络的原因了。ERR socket hung up 也是网络的问题。这些网络问题,一般在很少人使用网络的时候应该会好点,我在将registry 改为: http://registry.cnpmjs.org/ 后竟然成功了。
总结一下。大多问题的出现是因为网络。我就把github上npm 和ionic 的issue 都看了一遍,还有一些中国的同学遇到类似问题,大多是因为网络问题,vpn并不好使。npm 的registry 设置成 http://registry.cnpmjs.org 会好一点,谢谢cnpm那些热心的人.还有一点是因为如果一次安装ionic 不成功,就不要多次尝试了,npm的包之间的依赖貌似很麻烦,没深入了解,就不多谈它了,可以把$npm cache clean,一下。如果还不行,建议把Node.js 卸载重新安装。卸载方法:
把一下代码放到一个文本编辑器里。保存,取名uninstall_node.sh
#!/bin/bash
lsbom -f -l -s -pf /var/db/receipts/org.nodejs.pkg.bom \
| while read i; do
sudo rm /usr/local/${i}
done
sudo rm -rf /usr/local/lib/node \
/usr/local/lib/node_modules \
/var/db/receipts/org.nodejs.*
然后将该文件拖到终端执行一下,为了防止有些删除不完全,如有提示显示:permission denied可以 做完上一步操作后执行一下代码:
$chmod 777 uninstall_node.sh
然后:找到目录
usr/local/bin
usr/local/lib
把里面有关 node 、node_moudel的文件夹全部删除
重启一下mac 再安装node.js
关于npm这个包管理工具的具体内部机制,我也不太清楚,因为只是把它当做工具。方便就行。有兴趣的同学可以参考http://cnpmjs.org/。
希望搭建ionic 的同学不要遇到我这么悲催的情况。
以上过程参考了许多网上的资料,在此谢过各位分享自己经验的热心人。
标签:
原文地址:http://www.cnblogs.com/wjw-blog/p/4840727.html