通过上一章节的学习,我们的开发环境已经配置好了,接下来我们开始创建第一个sencha touch的项目,网络上很多sencha touch的教程都是手动搭建项目的,

  不过手动搭建的项目缺少一些sencha cmd对项目代码打包压缩编译的关键文件,

  所以在这里我们从创建项目开始都是使用sencha cmd工具,请确保上一章节中所有的环境配置都已经成功,

  那么接下来我们开始我们的项目创建:

  1.项目创建

    在项目创建前,我们先确认下我们的sencha cmd的版本,

    点击开始==》运行==》cmd,

    键入sencha,会显示cmd的版本,

    现在最新的是4.0,如果不是最新的版本,可以键入指令    

   sencha upgrade

    该指令会自动从远程服务器上更新sencha cmd的版本,

    确认版本更新完毕后,我们来创建一个新的项目,

    用cmd创建sencha touch的项目需要在sencha touch的sdk包的环境下进行,我们有两种方式:

    1.1 在sencha sdk包目录下进行创建

    点击开始==》运行==》键入cmd,

    一般默认显示是系统用户文件夹路径下,

    我的sdk包被我拷到了iis的站点文件夹下D:\webtest\touch-2.3.1,

    所以这里我输入d:,然后回车,

    cd D:\webtest\touch-2.3.1,

    进入到sdk包目录下,如图:

    

    这个时候,我们运行sencha cmd创建项目的指令

  

    sencha generate app MyFirst ../MyFirst

    generate app是创建一个新的项目,

    第一个参数MyFirst对应的是项目的名称,

    第二个参数../MyFirst对应是项目的输出地址,是相对路径,指向是cmd当前指定路径的上级目录,

    有web开发经验的同学应该一眼就能看懂,

    指令执行后,如图所示:

     

    在不报错的情况下项目就创建成功了,

    此时在我的D:/webtest目录下就会生成一个MyFirst项目文件,这就是我们新创建的sencha touch项目,

    因为已经在服务站点路径下,如果生成的项目路径不在web服务站点路径下,可以把项目拷过去,

    接着我们可以打开浏览器通过http://127.0.0.1/MyFirst/进行访问,

    在等在文件载入完成后,我们便能看到我们第一个项目了,如图:

    

     是不是很兴奋,你可以试着调整下浏览器的窗口大小,整个项目完全是响应式的,会根据你的窗口大小调整布局

    有些人可能想直接点击新建项目下的index.html文件运行项目,此时页面会卡在载入界面并报如下错误:

    这是因为cmd创建项目的时候,会生成一个bootstrap.json文件,这个文件的访问是在development.js中通过xhr的方式实现的

    var xhr = new XMLHttpRequest();
xhr.open('GET', 'bootstrap.json', false);
xhr.send(null);

    需要http请求,所以会报错,

    不过整个项目完成后用cmd指令打包后,json文件都会被去掉,这个时候就不会出现该问题了,

    接下来我们讲一下另一种创建方式

    1.2 通过cmd指令直接指定sdk路径创建

    该创建方式跟上一种大同小异,唯一的区别在于,不用先将指令指定到sdk包路径下了,我们可以直接用

  

   sencha -sdk D:\webtest\touch-2.3.1 generate app MyFirst D:\webtest\MyFirst

     我们在generate app 前面加上了

    -sdk D:\webtest\touch-2.3.1,

    -sdk后面跟的就是我们的sencha touch的sdk包的路径,这样执行上面的指令,跟我们方法一里的效果是一样的,

    指令执行后,我们的MyFirst项目就被创建完成了

  

     下一章我们将对生成的项目结构做系统的分析

 

    

    

sencha touch 入门系列 (三)sencha touch 项目创建的更多相关文章

  1. sencha touch 入门系列 (九) sencha touch 布局layout

    布局用来描述你应用程序中组件的大小和位置,在sencha touch中,为我们提供了下面几种布局: 1.HBox: HBox及horizontal box布局,我们这里将其称为水平布局,下面是一段演示 ...

  2. sencha touch 入门系列 扩展篇之sencha touch 项目打包压缩

    经常有新手同学抱怨说sencha touch的项目加载速度为什么这么慢,经常要10秒左右的时间甚至更多, 大家都知道,sencha touch开发的项目中引用了大量的js文件,当我们打开项目时,st的 ...

  3. mybatis入门系列三之类型转换器

    mybatis入门系列三之类型转换器 类型转换器介绍 mybatis作为一个ORM框架,要求java中的对象与数据库中的表记录应该对应 因此java类名-数据库表名,java类属性名-数据库表字段名, ...

  4. C# 互操作性入门系列(三):平台调用中的数据封送处理

    好文章搬用工模式启动ing ..... { 文章中已经包含了原文链接 就不再次粘贴了 言明 改文章是一个系列,但只收录了2篇,原因是 够用了 } --------------------------- ...

  5. [转]C# 互操作性入门系列(三):平台调用中的数据封送处理

    参考网址:https://www.cnblogs.com/FongLuo/p/4512738.html C#互操作系列文章: C# 互操作性入门系列(一):C#中互操作性介绍 C# 互操作性入门系列( ...

  6. sencha touch 入门系列 (四)sencha touch 新建项目目录结构解析

    通过上一章节的操作,我们的项目已经创建完成了, 大家通过http://127.0.0.1/MyFirst/应该都已经访问到了自己的应用, 接下来,我们展开我们项目,如图所示: 一.目录结构 1. .s ...

  7. sencha touch 入门系列 (七)sencha touch 类系统讲解(上)

    在mvc结构的基础上,sencha touch又使用了sencha公司为extjs4开发出来的类系统,在面向对象的编程语言中,类是对对象的定义,它描述了对象所包含的大量属性和方法. 跟面向对象语言类似 ...

  8. sencha touch 入门系列 (二)sencha touch 开发准备

    这是本人第一次写博客教程,没什么经验,文笔也不是很好,写这教程一方面为了巩固自己这段时间的学习成果,一方面帮助大家解决问题,欢迎大家多提建议,指出问题.接下来我们就开始我们的sencha touch开 ...

  9. ActiveMQ入门系列三:发布/订阅模式

    在上一篇<ActiveMQ入门系列二:入门代码实例(点对点模式)>中提到了ActiveMQ中的两种模式:点对点模式(PTP)和发布/订阅模式(Pub & Sub),详细介绍了点对点 ...

随机推荐

  1. jffs2系统制作2

    http://blog.chinaunix.net/uid-23208702-id-353022.html 1.2.   安装zlib库 由于交叉编译mtd工具时需要zlib.h文件,所以在编译之前先 ...

  2. iOS基础--UIView的常见属性

    UIView的常见属性以及方法 @property(nonatomic,readonly) UIView *superview; // 获得自己的父控件对象 @property(nonatomic,r ...

  3. JSON教程

    一.什么是JSON 1.JSON指的是JavaScript对象表示法(JavaScript Object Notation). 2.JSON是轻量级的文本数据交换格式,比XML更小.更快.更易解析. ...

  4. 用大白话揭开Ajax长轮询(long polling)的神秘面纱

    在看这篇Ajax长轮询之前可以先看看Ajax轮询技术(没有长),有助于理解: Ajax长轮询属于Ajax轮询的升级版,在客户端和服务端都进行了一些改造,使得消耗更低,速度更快. "不间断的通 ...

  5. Windows消息目录

    Windows消息目录1. WM_NULL=$0000:2. WM_CREATE=$0001: 应用程序创建一个窗口3. WM_DESTROY=$0002: 一个窗口被销毁4. WM_MOVE=$00 ...

  6. 关于Javascript判断变量是否为空

    如何判断Javascript对象是否存在 原文网址:http://www.ruanyifeng.com/blog/2011/05/how_to_judge_the_existence_of_a_glo ...

  7. 【好文收藏】javascript中event对象详解

    event代表事件的状态,例如触发event对象的元素.鼠标的位置及状态.按下的键等等. event对象只在事件发生的过程中才有效. event的某些属性只对特定的事件有意义.比如,fromEleme ...

  8. linux profile\bashrc\bash_profile之间的区别和联系

    /etc/profile 每个用户,首次登录时被执行: /etc/bashrc 每个运行bash shell的用户都执行此文件,当bsh被打开时,该文件被读取: ~/.bash_profile 专用于 ...

  9. 第二百八十四节,MySQL数据库-MySQL触发器

    MySQL数据库-MySQL触发器 对某个表进行[增/删/改]操作的前后如果希望触发某个特定的行为时,可以使用触发器,触发器用于定制用户对表的行进行[增/删/改]前后的行为. 1.创建触发器基本语法 ...

  10. Linux Source命令及脚本的执行方式解析(转)

    当我修改了/etc/profile文件,我想让它立刻生效,而不用重新登录:这时就想到用source命令,如:source /etc/profile对source进行了学习,并且用它与sh 执行脚本进行 ...