公司里要用到 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 的同学不要遇到我这么悲催的情况。

以上过程参考了许多网上的资料,在此谢过各位分享自己经验的热心人。

ionic 安装遇到的问题以及解决方案的更多相关文章

  1. Ionic 安装部署

    Ionic 安装部署 准备工作 下载安装Node.js, JDK,Apache Ant,Android SDK:编辑器用WebStorm node jdk ant 均需要加进 环境变量path中 An ...

  2. 在64位Win7操作系统中安装Microsoft Access Engine的解决方案

    在64位Win7操作系统中安装Microsoft Access Engine的解决方案 现在的Win7系统中安装的一般都是32位的Office,因为微软推荐使用32位的Office,兼容性更强,稳定性 ...

  3. Windows系统Ionic安装教程/Ionic环境配置

    原文链接:http://blog.csdn.net/superjunjin/article/details/43412017 参考文章 Cordova 3.x 基础(1) -- 环境搭建(Window ...

  4. ionic安装遇到的一些问题

    ionic = Cordova + Angular + ionic CSS // 安装(失败的话 Mac 尝试使用 sudo,Windows 尝试管理员身份运行 cmd)$ npm install - ...

  5. Windows 7 上安装Visual Studio 2015 失败解决方案

    安装之前先要看看自己的系统支不支持,具体的可以看:https://www.visualstudio.com/en-us/visual-studio-2015-system-requirements-v ...

  6. VS2015+cordova+ionic安装配置

    VS2015已经出了正式版,想用来试一下cordova方面的开发.最近在看ionic这个框架,于是想能在VS2015里编辑js就好了. 下面说一下蛋疼的安装配置过程. 一.安装VS2015及Andro ...

  7. npm命令ionic安装失败cordova安装失败解决方法

    转载:http://bbs.phonegap100.com/thread-2622-1-1.html 镜像使用方法(三种办法任意一种都能解决问题,建议使用第三种,将配置写死,下次用的时候配置还在): ...

  8. GJM : 安装SqlServer遇到问题的解决方案 [原创]

    感谢您的阅读.喜欢的.有用的就请大哥大嫂们高抬贵手"推荐一下"吧!你的精神支持是博主强大的写作动力以及转载收藏动力.欢迎转载! 版权声明:本文原创发表于 [请点击连接前往] ,未经 ...

  9. ionic 安装本地插件极光推送

    问题:按照官方文档的步骤 假如把插件保存到了D:\push\jpush,当执行到 cordova plugin add D:\push\jpush 的时候,ionic 不是从本地目录安装,而是从reg ...

随机推荐

  1. NUCLE F072 Pin说明http://home.cnblogs.com/group/topic/8550.html

    LEDs LD1     1  RED on                        - PC和ST_Link通讯初始化成功     2  GREEN ON                    ...

  2. 关于IP地址的一个细节问题

    使用ip2long()和long2ip()函数把IP地址转成整型存放进数据库而非字符型.这几乎能降低1/4的存储空间.同时可以很容易对地址进行排序和快速查找;

  3. I7-5775C之所以被Intel跳过,是因为本身有太多BUG

    说起I7-5775C,第五代酷睿处理器,可能大多数人都没有使用过,也并不清楚他有什么样的特性. 在2015年6月份,我在日本亚马逊买了一个I7-5775C,从此噩梦就开始了(现在已经换了I7-5820 ...

  4. ASP.NET WEBAPI 简单CURD综合测试(asp.net MVC,json.net,sql基础存储过程和视图,sqlhelper,json解析)

    草图   真正的后端是不管前端是什么平台,用什么语言的,JSON格式的数据应该可以应对.用ASP.NET WEBAPI尝试做一个后端,实现最基本的CURD,业务逻辑和数据库操作都放在后端,前端只需要正 ...

  5. C#知识点有必要知会

    如果说你父类里面有一个成员比如int a;那么你子类里面也可以再定义一个int a,这个时候base.a和this.a表示的就不是一个变量了,如果说子类里面没有,那么base.a和this.a表示的都 ...

  6. Linux之常用快捷键

    tab:自动补齐命令或者路径 ESC+u:将字符小写变大写 ctrl+s:在终端中冻结stdin ctrl+q:在终端中恢复stdin ctrl+a:光标移动到行首 ctrl+e:光标移动到行尾 ct ...

  7. CMD执行BCP命令

    C:\>BCP "EXEC GetU '2016-7-11' ,'-1'" queryout "C:\\C3Marketing\SummaryReport_test ...

  8. SC.UI

    IController using Microsoft.Practices.Prism.Events; using Microsoft.Practices.Prism.Regions; using M ...

  9. Javasocket1

    转载自http://www.cnblogs.com/linzheng/archive/2011/01/23/1942328.html java socket编程 一,网络编程中两个主要的问题 一个是如 ...

  10. Linux高级权限管理 - ACL

    传统权限模型缺点: 传统的UGO权限模型无法应对负责的权限设置要求,如对于一个文件只能设置一个组,并且对该组进行权限控制,但是如果该文件有多个组合会对其进行访问,并且都要要求权限限制时,传统的UGO模 ...