如何使用Sencha Cmd创建无默认初始模板的空白ExtJS应用
生成无默认示例文件的空白ExtJS应用操作方法
Sencha Cmd 7.x 版本没有提供直接生成完全空白应用的内置参数,先生成基础项目骨架再清理默认模板是最稳定的方案,操作步骤如下:
- 第一步:生成项目基础骨架
在目标目录执行你原本使用的生成命令,先把项目的基础配置、构建目录、依赖配置搭好:sencha -sdk C:\ExtJS\ext-7.5.1 generate app MyApp . - 第二步:删除所有自动生成的示例业务文件
执行完生成命令后,删除以下默认生成的模板文件:- 整个
app/view/main文件夹,包含默认的Main视图、MainController、MainModel、对应样式文件 app/store目录下所有自动生成的示例store文件,空文件夹可保留app/model目录下所有自动生成的示例model文件,空文件夹可保留app/shared目录下的示例工具类文件(7.5.1版本默认携带,无实际业务作用可直接删除)
- 整个
- 第三步:修改入口配置,移除默认视图引用
- 打开
app/Application.js文件,做如下修改:- 删除默认的
mainView: 'MyApp.view.main.Main'配置项 - 删除文件内默认挂载的示例stores、controllers引用,清空
launch方法里的默认逻辑 - 把你已有的旧视图文件复制到
app/view对应目录下,注意旧视图文件内的命名空间必须和当前项目名MyApp保持一致,如果旧文件原本使用其他应用名,直接全局替换文件内的旧命名空间为MyApp即可,否则会出现类加载失败的问题。你可以直接在launch方法里手动初始化渲染你的视图,参考代码:
Ext.define('MyApp.Application', { extend: 'Ext.app.Application', name: 'MyApp', launch: function () { // 替换成你自己的旧视图类名 Ext.create('MyApp.view.YourOldViewName', { fullscreen: true, renderTo: Ext.getBody() }); } }); - 删除默认的
- 打开根目录的
app.json文件,找到views、requires两个数组,把里面默认写入的MyApp.view.main.*相关的条目全部删除,后续新增自己的业务类时再往数组里加即可。
- 打开
- 第四步:重新构建验证
在项目目录执行sencha app build development重新构建开发版资源,或者执行sencha app watch启动本地开发服务,访问页面就不会再出现找不到MainController、MainModel的报错,你的旧视图只要路径、命名空间配置正确就可以正常加载显示。
提示:如果后续要使用路由、全局store等功能,直接在Application.js里自行添加配置即可,清理后的项目没有多余的模板代码,初始化逻辑完全可控。
内容的提问来源于stack exchange,提问作者scuz
相关产品推荐
相关产品推荐

