extjs读书笔记(一)

extjs读书笔记(一)

各个extjs版本下载地址
http://www.extjs.com/learn/Ext_Version_Archives

基本语法
1.Ext.Element元素

document.getElementById("test")得到HTML元素
Ext.get()得到Ext.Element元素,要得到HTML元素的话,需要Ext.get().dom

Ext.getCmp是Ext.ComponentMgr.get的缩写,得到注册的ext的组件,比如:
var foo = new Ext.Panel({
id:'panelCmp',
title:"测试",
renderTo:"divHolder",
width:300,
height:200
});
Ext.getCmp("panelCmp").setTitle("新的标题");
<div id="divHolder"></div>

Ext.getBody方法与document.body得到的元素对应
Ext.onReady(function(){
var foo = new Ext.Panel({
title:"测试",width:300,height:200
})
foo.render(Ext.getBody());
})

Ext.Element.* 显示隐藏方法
show/hide ----- setVisible 显示与隐藏
setVisibilityMode 隐藏显示方式
setOpacity 透明度

Ext.Element.* 内容控制方法
update
load

Ext.Element.* 操作DOM方法(DomHelper)
parent
createChild 子
appendChild 同级
remove
insertBefore/insertAfter
insertFirst
insertSibling

Ext.Element.* 尺寸大小/定位方法
setHeight
setWidth
setSize
setBounds
move
center

Ext.Element.* 特效动画方法
hightlight
frame

2.Domhelper介绍
<div id="testID"></div>
<script>
var list = Ext.DomHelper.append('testID', {
tag: 'ul', cls: 'my-list', children: [
{tag: 'li', id: 'item0', html: 'List Item 0'},
{tag: 'li', id: 'item1', html: 'List Item 1'},
{tag: 'li', id: 'item2', html: 'List Item 2'},
{tag: 'li', id: 'item3', html: 'List Item 3'},
{tag: 'li', id: 'item4', html: 'List Item 4'}
]
});
</script>

3.元素选择DomQuery介绍
元素选择
Ext.query("span")
Ext.query("span","foo") id为foo
Ext.query("#foo")
Ext.query(".foo") class名字
Ext.query("*") 返回所有对象
Ext.query("div span")

如果开启了Firefox的Firebug的情况下,可以开启“控制台”,使用如下调试打印信息
<script>
// 这个查询会返回有两个元素的数组因为查询选中了对文档的所有span标签。
console.log(Ext.query("span"));
// 这个查询会返回有一个元素的数组因为查询顾及到了foo这个id。
console.log(Ext.query("span", "foo"));
console.log(Ext.query("#foo"));// 这个查询会返回包含我们foo div一个元素的数组!
/*
这个查询会返回有一个元素的数组,
包含与之前例子一样的div但是我们使用了class name来获取
*/
console.log(Ext.query(".foo"));
//你也可以使用关键字“*”来获取所有的元素:
console.log(Ext.query("*"));//这会返回一个数组,包含文档内的所有元素。
//要获取子标签,我们只须在两个选择符之间插入一个空格:
console.log(Ext.query("div p")); //这会返回有一个元素的数组,内容为div标签下的p标签
console.log(Ext.query("div span"));// 这会返回有两个元素的数组,内容为div标签下的span标签
</script>


属性选择符
Ext.query("*[class=bar]"); //class="bar"的所有元素
Ext.query("*[class!=bar]");//class不等于"bar"的所有元素
Ext.query("*[class^=bar]");//class从b开头的所有元素
Ext.query("*[class$=r]");//class由r结尾的所有元素
Ext.query("*[class*=a]");//class中抽出a的所有元素
Ext.query("*[class]");//返回所有有class标签的元素

css值选择符
Ext.query("*{color=red}");//获取红色的元素
Ext.query("*{color=red} *{color=pink}"); //获取红色且粉红色的元素
Ext.query("*{color!=red}");//不是红色的元素
// 获取所有颜色属性是从“yel”开始的元素
console.log(Ext.query("*{color^=yel}"));
// 获取所有颜色属性是以“ow”结束的元素
console.log(Ext.query("*{color$=ow}"));
// 获取所有颜色属性包含“ow”字符的元素
console.log(Ext.query("*{color*=ow}"));
**项目名称:** 基于Vue.js与Spring Cloud架构的博客系统设计与开发——微服务分布式应用实践 **项目概述:** 本项目为计算机科学与技术专业本科毕业设计成果,旨在设计并实现个采用前后端分离架构的现代化博客平台。系统前端基于Vue.js框架构建,提供响应式用户界面;后端采用Spring Cloud微服务架构,通过服务拆分、注册发现、配置中心及网关路由等技术,构建高可用、易扩展的分布式应用体系。项目重点探讨微服务模式下的系统设计、服务治理、数据致性及部署运维等关键问题,体现了分布式系统在Web应用中的实践价值。 **技术架构:** 1. **前端技术栈:** Vue.js 2.x、Vue Router、Vuex、Element UI、Axios 2. **后端技术栈:** Spring Boot 2.x、Spring Cloud (Eureka/Nacos、Feign/OpenFeign、Ribbon、Hystrix、Zuul/Gateway、Config) 3. **数据存储:** MySQL 8.0(主数据存储)、Redis(缓存与会话管理) 4. **服务通信:** RESTful API、消息队列(可选RabbitMQ/Kafka) 5. **部署与运维:** Docker容器化、Jenkins持续集成、Nginx负载均衡 **核心功能模块:** - 用户管理:注册登录、权限控制、个人中心 - 文章管理:富文本编辑、分类标签、发布审核、评论互动 - 内容展示:首页推荐、分类检索、全文搜索、热门排行 - 系统管理:后台仪表盘、用户与内容监控、日志审计 - 微服务治理:服务健康检测、动态配置更新、熔断降级策略 **设计特点:** 1. **架构解耦:** 前后端完全分离,通过API网关统接入,支持独立开发与部署。 2. **服务拆分:** 按业务域划分为用户服务、文章服务、评论服务、文件服务等独立微服务。 3. **高可用设计:** 采用服务注册发现机制,配合负载均衡与熔断器,提升系统容错能力。 4. **可扩展性:** 模块化设计支持横向扩展,配置中心实现运行时动态调整。 **项目成果:** 完成了个具备完整博客功能、具备微服务典型特征的分布式系统原型,通过容器化部署验证了多服务协同运行的可行性,为云原生应用开发提供了实践参考。 资源来源于网络分享,仅用于学习交流使用,请勿用于商业,如有侵权请联系我删除!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值