[原创] 分享一下Sencha 三种环境(开发环境、测试环境、生产环境)的优雅配置方案
背景介绍:
在一个AspNet MVC Web API的后端Web开发项目中,使用了Sencha6.5+作为前端表现技术。
在进行两种开发框架的物理文件整合的时候,笔者不想把他俩的物理文件都“揉”在一个文件夹下面。
想尽量隔离开来,方便前后端两类开人员,把精力只关注到自己的开发文件上。
具体配置:
1、在Asp.Net MVC Web API项目文件夹下,新建一个文件夹“extjs”(名称可以根据自己的需要,随意),把Sencha创建的前端项目文件都放置在此文件夹下。
2、接下主要是针对app.json文件的设置:
2.1 告诉Sencha,你的网站首页文件的相对路径:
"indexHtmlPath": "../index.html",
"output": {
"page": "../../../../IndexOutput.htm",
"microloader": {
"path": "microloader.js",
"embed": false,
"enable": true
}
}
3、关于2.1里提到的index.html
该文件存在的目的,主要是为了提供一个嵌入式的microloader占位。
<script id="microloader" type="text/javascript"></script>
4、关于2.2里提到的IndexOutput.htm
该文件存在的目的,主要是为了提供一个网站首页输出。
<script id="microloader" data-app="1900dd7d-7922-4a63-a091-ff81f79d5617" src="extjs/build/production/AppDemo/microloader.js"></script>
注:上面是生产环境的发布路径。microloader.js文件,是因为我在2.2节提到的在app.json中设置了output/microloader/path,以及embed:false 产生。(因为我不喜欢把一堆启动脚本生成成首页文件中,我喜欢这样独立一点,这样,引用的时候就固定这个路径就好了)
5、网站真正的首页。
上面4,5,两节提到的 两个index.htm文件,他们的作用,我只用在的编译的时候,配合Sencha编译器使用。我们项目的真正的首页文件,在Asp.Net MVC项目的View视图目录下,打开主要代码如下所示:
<!-- 开发版 -->
@*<script id="microloader" data-app="1900dd7d-7922-4a63-a091-ff81f79d5617" src="extjs/bootstrap.js"></script>*@
<!-- 测试版 -->
@*<script id="microloader" data-app="1900dd7d-7922-4a63-a091-ff81f79d5617" src="extjs/build/testing/AppDemo/microloader.js"></script>*@
<!-- 发布版 -->
<script id="microloader" data-app="1900dd7d-7922-4a63-a091-ff81f79d5617" src="extjs/build/production/AppDemo/microloader.js"></script> </head>
通过上面的一系列的设置,我的目标达到了。
1)在通常开发时,使用“开发版”的js脚本启动sencha框架。cmd使用 Sencha app watch配合开发。
2)在使用测试版本的时候,cmd使用sencha app build testing。使用“测试版本”的js脚本启动sencha框架。(编译为测试版本时,js会打包在一个js文件中,但不会混淆代码,代码还是可以很容易debug的)
3)在使用发布版本的时候,cmd使用sencha app build production。使用使用“发布版本”的js脚本启动sencha框架。
最近花了不少时间研究,年纪大了害怕忘记,特地文字记录一下。
如果有朋友需要,强烈建议结合实际操作。感觉写的相当的啰嗦。:)
The End.
[原创] 分享一下Sencha 三种环境(开发环境、测试环境、生产环境)的优雅配置方案的更多相关文章
- 【Spring】使用@Profile注解实现开发、测试和生产环境的配置和切换,看完这篇我彻底会了!!
写在前面 在实际的企业开发环境中,往往都会将环境分为:开发环境.测试环境和生产环境,而每个环境基本上都是互相隔离的,也就是说,开发环境.测试环境和生产环境是互不相通的.在以前的开发过程中,如果开发人员 ...
- Spring.profile配合Jenkins发布War包,实现开发、测试和生产环境的按需切换
前两篇不错 Spring.profile实现开发.测试和生产环境的配置和切换 - Strugglion - 博客园https://www.cnblogs.com/strugglion/p/709102 ...
- Maven 如何为不同的环境打包 —— 开发、测试和生产环境
在开发过程中,我们的软件会面对不同的运行环境,比如开发环境.测试环境.生产环境,而我们的软件在不同的环境中,有的配置可能会不一样,比如数据源配置.日志文件配置.以及一些软件运行过程中的基本配置,那每次 ...
- Spring.profile实现开发、测试和生产环境的配置和切换
软件开发过程一般涉及“开发 -> 测试 -> 部署上线”多个阶段,每个阶段的环境的配置参数会有不同,如数据源,文件路径等.为避免每次切换环境时都要进行参数配置等繁琐的操作,可以通过spri ...
- IDEA开发、测试、生产环境pom配置及使用
pom文件 一般放在最下面,project里 <!--开发环境.测试环境.生产环境--> <!--生产环境--> <profiles> <profile> ...
- vue配置开发,测试,生产环境api
npm run build 调用开发环境接口,打包开发环境npm run build:test 调用测试环境接口,打包测试环境npm run build:prod 调用生产环境接口,打包生产环境 vu ...
- vue中通过cross-env插件配置三种环境(开发,测试,生产)打包,不用切换api
1. 话不多说,第一步就是安装必要的插件 npm install cross-env --save 2.修改config里面的参数,这里只展示一个test,其他类似 3.修改package.json ...
- [配置]VUE中通过process.env判断开发,测试和生产环境,并分环境配置不同的URL HOST
本文链接:https://blog.csdn.net/tom_wong666/article/details/89763620 Tom哥的博客博文分类和索引页面地址:https://blog.csdn ...
- 【maven】之配置开发,测试,正式环境pom.xml文件
在进行web程序开发,如果项目组没有使用自动化发布工具(jenkins + maven + svn + tomcat ),我们一般会使用maven的热部署来完成发布,在部署的过程中我们开发,测试,生产 ...
随机推荐
- POI 解析excel 空行问题
https://www.cnblogs.com/interdrp/p/4019583.html
- DDoS攻防战 (一) : 概述
岁寒 然后知松柏之后凋也 ——论语·子罕 (此图摘自<Web脚本攻击与防御技术核心剖析>一书,作者:郝永清先生) DDoS,即 Distributed Denial of Servi ...
- springboot web项目的单元测试
不废话,直接上代码. //// SpringJUnit支持,由此引入Spring-Test框架支持! @RunWith(SpringJUnit4ClassRunner.class) //// 指定我们 ...
- Python之类属性的增删改查
#类属性又称为静态变量,或者是静态数据,这些数据是他们所属的类对象绑定的,不依赖于任何类实例 class ChinesePeople: country = 'china' def __init__(s ...
- dapper.net 转载
Dapper.NET——轻量ORM Dapper.NET使用 本文目录 Dapper.NET使用 1.为什么选择Dapper 2.以Dapper(4.0)为例. 2.1 在数据库中建立几张表. 2 ...
- Java Magic. Part 2: 0xCAFEBABE
Java Magic. Part 2: 0xCAFEBABE @(Base)[JDK, magic, 黑魔法] 转载请写明:原文地址 英文原文 系列文章: -Java Magic. Part 1: j ...
- Lock()与RLock()锁
资源总是有限的,程序运行如果对同一个对象进行操作,则有可能造成资源的争用,甚至导致死锁 也可能导致读写混乱 锁提供如下方法: 1.Lock.acquire([blocking]) 2.Lock.rel ...
- Process子类
创建新的进程还能够使用类的方式,可以自定义一个类,继承Process类,每次实例化这个类的时候,就等同于实例化一个进程对象,请看下面的实例: from multiprocessing import P ...
- 给vim编辑器自动添加行号
1.只改变当前用户的vim 在~目录下 vim .vimrc添加一行 set number 即可(普通用户权限即可) 2. 改变所有用户的vim 打开文件 /etc/vimrc 添加一行 set n ...
- spring-boot PageHelper
分页插件PageHelper 参看了pagehelper-spring-boot,使用起来非常放方便,关于更多PageHelper可以点击https://github.com/pagehelper/M ...