登录
注册
关于我们
简体中文
ENGLISH
搜索
购物车
0 ITEMS ON YOUR CART
首页
动态
方案
案例
专栏
期刊
联系我们
首页
期刊
[Ext JS]图片显示方式
Ext JS开发大全
第1章 Ext JS快速入门示例[4/4]
第12章[12.10]富文本编辑器 CKEditor与Ext JS的整合
第12章[12.10.1] Ext JS + CKEditor+Spring Boot 实现编辑器图片上传
第11章[11.6] Ext JS 自行搭建远端库的包升级版本后找不到的问题解决
[Ext JS 4] 实战之Grid, Tree Gird编辑
ext命令集
第12章[12.3] Ext JSGrid中的超链接列及其功能实现
[Ext JS]textfield添加compositionstart、compositionupdate 和compositionend _os
[Ext JS ] 动添切换字段的必填与非必填
3.1 Ext JS 组件总览
[Ext JS] Grid表格批量编辑的实现
Ext JS 快速开发工具
带触发器按钮的输入框
Ext JS的布尔对象类型处理及便捷方法
Ext JS的Object类型处理及便捷方法
ExtJS RadioGroup(单选按钮组) 使用及注意事项
Ext JS 模拟后端数据实现
ToolTip 实现全介绍
Ext JS下拉单选框(Combobox,TagFied)使用及疑难问题解决
Ext JS应用测试概览
Sencha Studio 监视工具( Inspect Tool)
Ext JS 4 升级指南
Ext JS 如何定义公用方法(单例类 or 静态方法)
Ext JS的模块化开发(Package)
Ext3 -- Form 实例。 用来migrate file 数据到DB用的
ExtJS 3 在Tab下加入Form 实例
Extjs Grid 中给已经添加过Filter的列增加标识
Extjs 实战之 Ext.tree.TreePanel Tree无法显示
Extjs弹出框的异步执行
Grid 动态该表列( reconfigure)的性能改善
Spring Boot Ext JS准前后端框架应用的会话(Session)处理
[Ext JS 4] Extjs 图表 Legend(图例)的分行与分列显示
[Ext JS 4] Extjs 之 initComponent 和 constructor的区别
[Ext JS 4] Grid 中的单元格添加Tooltip 的效果
[Ext JS 4] Grid 实战之分页功能
[Ext JS 4] Grid 组件
[Ext JS 4] MVC 应用程序框架
[Ext JS 4] MVC 应用程序框架
发布 [Ext JS 4] contentEL,renderTo, applyTo 释义与区别
[Ext JS 4] 动态加载
[Ext JS 4] 实战之 ComboBox 和 DateField (消失之解决办法)
[Ext JS 4] 实战之 Picker 和 Picker Field
[Ext JS 4] 实战之 带week(星期)的日期选择控件(二)
[Ext JS 4] 实战之 ComboBox 和 DateField 的点击事件在IE下失效
## [Ext JS 4] 实战之 带week(星期)的日期选择控件(三)
[Ext JS 4] 实战之 带week(星期)的日期选择控件
[Ext JS 4] 实战之Chart 坐标控制(单坐标,双坐标)
[Ext JS 4] 实战之Chart, Column Chart 定制颜色
[Ext JS 4] 实战之Grid, Tree Gird 动态添加列
[Ext JS 4] 实战之Grid, Tree Gird 动态添加列续(性能考虑)
[Ext JS 4] 实战之Grid, Tree Gird 动态添加行
[Ext JS 4] 实战之Grid, Tree Gird 添加按钮列
[Ext JS 4] 实战之Grid, Tree Gird编辑Cell
[Ext JS 4] 实战之Load Mask - 在Grid Reconfigure的使用状况
[Ext JS 4] 实战之Load Mask(加载遮罩)的显示与隐藏
[Ext JS 4] 实战之多选下拉单 (带checkbox) 续 - 带ALL 选项
[Ext JS 4] 实战之多选下拉单 (带checkbox)
[Ext JS 4] 实战之升级系列一[Ext jS 3-->Ext JS 4]
[Ext JS 4] 实战之将chart导出为png, jpg 格式的文件
[Ext JS 4] 实战之浏览器兼容
[Ext JS 4] 布局之实战二 - 中间区块不会自动伸展 (tab)续
[Ext JS 4] 组件之图表
[Ext JS 4]后台自动产生图档
[Ext JS 4]性能优化
[Ext JS 7 ]7.5 自适应配置 - Responsive Configs
[Ext JS 7] 关联(Association)
[Ext JS 7]事件(Event)
[Ext JS 7]ClassRequire错误解决
[Ext JS 7]的开发模式
[Ext JS 7]基于NPM的开发
[Ext JS ] 动添切换字段的必填与非必填
[Ext JS4] 数据包
[Ext JS4系列]Ext JS4 入门
[Ext JS6] Grid不同列的关联编辑
[Ext JS6] ViewControllers-视图控制器
[Ext JS6]Ext.Template
[Ext JS6]Sencha Cmd
[Ext JS6]编码规范
[Ext JS6]多类型设备开发
[Ext JS6]工作区-Workspace
[Ext JS6]路由(Routing)及使用
[Ext JS6]视图模型和数据绑定
[Ext JS6实战] Ajax获取Tree Store
[Ext JS6实战] Ext.XTemplate
[Ext JS6实战]动态数据绑定
[Ext JS] Sencha Cmd命令参考之二
[Ext JS] Sencha Cmd命令参考之一
[Ext JS] Group Grid-分组网格
[Ext JS] Group Grid-分组网格
[Ext JS]嵌套Grid的实现及注意事项
[Ext JS]SimXhr.js__dc=1659315492151_65 Uncaught TypeError问题分析与解决
[Ext JS]Sencha Studio安装与快速介绍之一
[Ext JS]textfield 添加 compositionstart、compositionupdate 和 compositionend
[Ext JS]图片显示方式
[ExtJS 6]Grid分页工具栏无效问题解决
[ExtJS6]ResponsiveColumn-自适应列布局
[Extjs 4] 类系统
基于Ext JS的模块化应用框架搭建及开发
[Ext JS] 自行搭建远端库的包升级版本后找不到的问题解决-The following versions are available
[Ext JS]鼠标移入移除时弹出和关闭窗口
[Ext JS]富文本编辑器 CKEditor与Ext JS的整合
[Ext JS]可编辑列Grid的全场景开发
['Ext JS]Grid中的超链接列及其功能实现
[Ext JS]Ext JS + CKEditor+Spring Boot 实现编辑器图片上传
[Ext JS]介绍与快速入门1
[Ext JS]实现带动态数字的图标
Spring Boot+Ext JS 实现图形验证码
Ext JS介绍与快速入门2
Ext JS开发基本环境准备与项目创建
[Ext JS]开发模式及快速测试方式
[Ext JS]多类型终端-电脑、移动端(手机、平板)
[Ext JS]基于Ext JS的MVC/MVVM架构的应用开发模式
[Ext JS]Ext JS的类与类体系
[Ext JS]Ext JS组件、容器与布局
[Ext JS]组件与容器的选择与开发
[Ext JS]Ext JS数据模型与数据封装
[Ext JS]Ext JS的控制器类型及使用
[Ext JS]说透Ext JS的窗口及对话框用法
[Ext JS]说透Ext JS的窗口及对话框用法
[Ext js]Grid行选择的多种场景和实现方式
[Ext JS]Ext JS类的继承与混合
CmsWing
[Ext JS]图片显示方式
## [Ext JS]图片显示方式 ### Ext JS 应用的图片应用场景以及图片显示实现方式 在Ext JS应用中, 图标一般使用图标字体实现,比如使用 Font Awesome 或是Pictos , 使用方式是配置iconCls属性,类似: iconCls: 'x-fa fa-home' 图标字体用于显示小的Icon , 但是某些场景下: 或者找不到合适的图标 或者要显示一个很大的图片 在上面的场景中, 就需要导入图片进行显示了。 而在Ext JS应用中, 要实现图片的显示,可以使用的方式有以下四种: 最原生的方式: 使用HTML的img 标签 使用Ext JS的Container 类型组件,设置的html 中使用HTML的img 标签 使用Ext JS的image 组件 在Ext JS 样式中设置背景图 ### Ext JS 主应用和子模块 ? Ext JS 的应用可以通过sencha generate app 命令创建,在较复杂的应用中,也可以通过sencha generate package 命令创建子模块(包)。 包含package 的项目目录结构如下: myapp app classic modern resources images 主应用的图片位置 packages local my-package resources images 子模块的图片位置 主应用和子模块都可以存放图片,相对位置都是 resources\images 。一般而言, 主应用以及各子模板都需要使用的图片放置在主应用的图片目录, 各子模块使用的图片则各自存放。 ### 图片处理场景 综合是否是子模块 和实现方式,展开处理的场景有: | 主应用 |子模块 | | ------------ | ------------ | | 使用HTML的img 标签 | 1.1 主应用直接使用HTML 的image标签 | | 使用Ext JS的Container 类型组件 | 1.2 主应用使用Container 类型组件设置image标签 | | 使用Ext JS的image 组件 | 1.3. 主应用使用使用 Ext JS的image 组件 | | 在Ext JS 样式中设置背景图 | 1.4. 主应用样式中使用图片做背景 | 而主应用和子模块的视图和图片之间的调用也可以交互的, 展开来的场景有: 主应用使用 主应用目录图片 主应用使用子模板目录图片 子模板使用主应用目录图片 子模板使用子模板目录图片 子模块使用主应用的图片类同主应用自身图片处理。 ### 1. 主应用处理 #### 1.1 主应用直接使用HTML 的image标签 在多开发模式下(classic ,modern),这里以经典模式为例, 图片放置在项目根目录的 resources/images 的目录中, 在视图设置 html 需要使用图片可以如下定义: 为什么是回退两层目录 ../../ ? 因为编译为生产环境之后的目录结构如下: myapp classic app.js resources images 生产环境的编译, 会把代码集中到app.js中, 所以以这个文件触发, 回退一层到classic目录, 再回退一层到项目的根目录,从根目录出发,到resources/images 就可以找到图片了。 #### 1.2 主应用使用Container 类型组件设置image标签 该方式和上面方式基本类似, 路径的设置也是一样的, 如下代码所示 ```json { xtype:'container', html:'' } ``` #### 1.3. 主应用使用Ext JS的image 组件 图片路径设置也是一样, 如下代码: ```javascript Ext.create('Ext.Img', { src: '../../resources/images/myimage.gif', }); ``` #### 1.4 主应用样式中使用图片做背景 在样式设置的方式中, 图片路径和上面不一样, 使用resources 下的相对路径就可以了。 原因是在编译时这个路径会自动的处理, 类似: ```css .my-class { background-image: url('images/my.png'); } ``` ### 2. 子模块图片资源的处理 存放在子模块目录下的图片, 使用Sencha Cmd 编译之后, 在开发环境和生产环境的路径会不一样, 以开发环境为例, 产生的图片的路径类似: build/development/MyApp/classic/resources/my-package/images/my-image.png 这种路径包括了项目名称、开发模式、模块名, 这就很难通过路径的前进后退来定位了。而且,开发、生产环境不一致, 定位的路径可能开发环境好的, 到生产环境就不行了。 Ext JS的Ext类里面提供了一个resolveResource方法, 可以帮助定位包的资源文件的位置, 类似: ```javascript Ext.resolveResource('<@my-package>images/my-image.png') ``` 这个在开发环境的地址就是: build/development/MyApp/classic/resources/my-package/images/my-image.png #### 2.1 子模块使用HTML 的image标签 结合Ext.resolveResource , 获取子模块图片的地址: images/my-image.png')> #### 2.2 子模块使用Container 类型组件设置image标签 类似上面处理: ```json { xtype:'container', html:'' } ``` #### 2.3 子模块主应用使用Ext JS的image 组件 image 组件可以直接使用<@mypackage-name> 来指定 ```json { xtype:'image', src:'<@mypackage-name>images/my-image.png' } ``` #### 2.4 子模块样式中使用图片做背景 子模块样式里面使用子模块的图片可以直接写为: ```css .my-class { background-image: url('images/my.png'); } ``` #### 备注 本篇的图片显示支持 1841 和 8080 (前后端整合开发)的两种开发方式。
网站导航
首页
动态
方案
案例
专栏
期刊
联系我们