本文还有配套的精品资源,点击获取
简介:jQuery EasyUI 1.9.4是一个轻量级的前端开发框架,基于jQuery,提供丰富的JavaScript组件,以快速构建用户界面。该版本包含了核心库、组件实现、组件加载器、移动端支持、更新日志与许可协议、帮助文档及示例代码。本课程将详细介绍如何使用EasyUI来提高Web应用开发的效率,并通过源代码和示例学习组件的使用方法。
1. jQuery EasyUI 概述
1.1 jQuery EasyUI简介
jQuery EasyUI是一个基于jQuery的UI库,它为开发者提供了一系列易于使用的界面组件。该库被设计为轻量级、模块化且易于扩展,旨在简化Web前端开发过程。它包含了一整套包括数据展示、表单输入、窗口弹出、菜单导航等功能丰富的界面组件。这些组件都经过精心设计,以提高用户体验并确保跨浏览器的兼容性。
1.2 jQuery EasyUI的优势
与传统的编写大量CSS和JavaScript代码来实现用户界面的方式相比,jQuery EasyUI的优势在于其能够快速开发出美观、交云的Web应用。它提供了一种简单的方法来构建复杂的用户界面,无需深入了解底层HTML、CSS或JavaScript代码。这不仅减少了开发时间,还使得代码的维护和升级变得更加容易。
1.3 使用场景
jQuery EasyUI适合那些需要快速开发和上线项目的企业和开发者,特别是当项目需要面向多个浏览器时。它也非常适合用于快速原型设计,以及那些对交云要求较高的应用,如后台管理界面、数据密集型的Web应用等。通过使用jQuery EasyUI,开发者可以将重点放在业务逻辑上,而非界面细节上,从而加速产品上市时间。
// 示例代码:引入jQuery EasyUI库并初始化一个数据表格组件
$(function() {
$('#myTable').table({
url: '/data.php', // 数据源地址
columns: [[
{field: 'id', title: 'ID', width: 50},
{field: 'name', title: '姓名', width: 100}
]]
});
});
2. jQuery库及DOM操作简化
在前端开发中,jQuery是一个非常重要的库,它简化了JavaScript的DOM操作,并提供了丰富的接口来进行事件处理、动画制作和AJAX交互等。本章将深入探讨如何高效地使用jQuery库及其操作DOM的技巧。
2.1 jQuery库的引入与基础使用
2.1.1 jQuery库的下载与引入
jQuery库可以被下载并在本地环境中使用,也可以直接通过CDN链接引入到页面中。使用CDN的方式更简单快速,同时也让网站的加载速度更快,因为用户可能已经访问过使用同一CDN资源的其他网站,并缓存了这些文件。jQuery的下载地址可在官方网站获取,或者选择一个可靠的CDN服务如Google, Microsoft等。
引入jQuery后,便可以在页面中使用其功能。以下是一个基本的使用示例:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>jQuery引入示例</title>
<script src="***"></script>
</head>
<body>
<button id="myButton">点击我</button>
<script>
$(document).ready(function(){
$('#myButton').click(function(){
alert('按钮被点击');
});
});
</script>
</body>
</html>
在上述示例中,我们引入了jQuery的压缩版本,并在页面加载完成后绑定了一个点击事件到id为 myButton
的按钮上。
2.1.2 jQuery选择器与DOM元素操作
jQuery的核心是其强大的选择器功能,允许开发者以更简洁的方式选择DOM元素。jQuery选择器能够基于id、类、标签名等多种模式查找页面中的元素。在找到这些元素之后,可以使用jQuery提供的方法对它们进行操作,如修改文本、样式、属性等。
以下是jQuery选择器和元素操作的一些基本示例:
// 选择ID为"someId"的元素
$('#someId')
// 选择所有类名为"someClass"的元素
$('.someClass')
// 选择所有p元素
$('p')
// 获取元素的文本内容
$('#someId').text();
// 修改元素的文本内容
$('.someClass').text('新文本');
// 设置元素的CSS样式
$('#someId').css('color', 'red');
// 添加一个类到元素上
$('.someClass').addClass('newClass');
// 移除一个类从元素上
$('.someClass').removeClass('oldClass');
通过上述示例我们可以看到,jQuery选择器与DOM操作的结合能够让我们以非常高效和简洁的方式操作页面元素。对于经验丰富的开发者来说,这些操作可以减少代码量,并提升开发效率。
2.2 jQuery DOM操作的进阶技巧
2.2.1 事件处理机制与实践
jQuery的事件处理机制允许开发者为DOM元素绑定各种事件处理器。这些事件包括但不限于点击、鼠标悬停、键盘输入等。相较于原生JavaScript,jQuery的事件处理不仅语法更简洁,而且提供了事件冒泡、事件委托等高级特性。
事件委托是jQuery事件处理中的一个重要概念,它允许你将事件监听器绑定到父元素上,而不是直接绑定到目标元素上。当事件在子元素上触发时,事件会冒泡到父元素,然后由父元素的监听器来处理。这种方法不仅可以减少内存的消耗,还能提高程序的性能,特别是当有大量子元素需要绑定事件时。
下面是一个使用事件委托的示例:
// 绑定点击事件处理器到ul元素上,但响应子元素li的点击事件
$('ul').on('click', 'li', function(){
$(this).css('background-color', 'yellow');
});
2.2.2 动画与特效的实现方法
jQuery提供了很多内置方法来创建优雅的动画和特效。这些方法包括淡入淡出(fadeIn, fadeOut),滑动(slideDown, slideUp),自定义动画(animate)等。它们都能在不需要额外插件的情况下使用,并且这些动画方法可以与回调函数结合使用,实现更复杂的交互效果。
一个简单的动画示例代码如下:
// 淡入效果
$('.someElement').fadeIn();
// 自定义动画
$('.someElement').animate({
opacity: 0.5,
left: '250px'
}, 2000);
// 动画完成后执行的回调函数
$('.someElement').fadeOut('slow', function(){
alert('动画完成');
});
自定义动画方法 animate
允许开发者指定CSS属性和值,以及动画执行的时间(以毫秒为单位)。通过改变这些属性值,开发者可以创造丰富的动画效果。
表格
| 功能 | 代码示例 | 说明 | | --- | --- | --- | | 选择元素 | $('selector')
| 使用jQuery选择器查找元素 | | 获取内容 | .text()
| 获取或设置元素的文本内容 | | 设置样式 | .css('property', 'value')
| 设置CSS属性和值 | | 绑定事件 | .on('event', handler)
| 为元素绑定事件处理器 | | 实现动画 | .animate({ CSS 属性 }, 时间, 回调函数)
| 创建自定义动画 |
代码块分析
下面是一个使用 animate
方法的代码块,并带有一个逻辑分析:
// 代码块:使用jQuery的animate方法来实现一个淡入效果
$('.element').animate({
opacity: 'show' // jQuery提供了一个便捷的值'show'用于直接设置为1
}, 1000); // 动画时长为1000毫秒
上述代码段展示了使用jQuery的 animate
方法来改变元素的透明度,并且在指定的时间内完成。参数 opacity: 'show'
是jQuery的快捷方式,等同于设置透明度为1。通过调整时间参数,开发者可以控制动画的速度,1000毫秒意味着动画将在1秒内完成。
以上就是关于jQuery库及DOM操作简化的详细探讨,从引入jQuery库到基础使用,再到进阶技巧,包括事件处理和动画特效的实现方法,相信通过这些内容,前端开发者可以更深入地理解和运用jQuery,从而提升开发效率和页面的交互体验。
3. jQuery EasyUI核心组件
3.1 常用界面组件介绍
3.1.1 数据表格(DataGrid)的使用
数据表格组件是jQuery EasyUI中最常用的界面组件之一,它能展示和操作数据。以下是如何使用数据表格组件的步骤:
- 引入数据表格所需的CSS和JS文件: ```html
```
- 创建一个HTML表格作为数据表格的容器:
```html
```
- 定义JSON数据,并初始化数据表格:
javascript var data = [ {id:1, name:"David", age:32}, {id:2, name:"Tom", age:28}, {id:3, name:"Joy", age:44}, // 更多数据... ]; $(function(){ $('#tt').datagrid({ title: 'DataGrid', iconCls: 'icon-save', width: 600, height: 250, url: '/getjsondata.php', // 加载数据的URL method: 'get', columns: [[ {field:'id',title:'ID',width:50}, {field:'name',title:'Name',width:100}, {field:'age',title:'Age',width:80} ]], pagination:true }); });
参数说明: - url
: 数据源的URL,数据格式为JSON,返回的数据格式通常是{total:"数据总数", rows:[{数据...}, ...]}。 - columns
: 表格列的定义。 - pagination
: 是否显示分页器。
- 自定义列显示格式: 可以使用formatter属性自定义列的显示内容。以下代码表示自定义一个列,将年龄显示为"年龄: 年龄值"的格式:
javascript columns: [[ {field:'id',title:'ID',width:50}, {field:'name',title:'Name',width:100}, {field:'age',title:'Age',width:80, formatter: function(value, row, index) { return "年龄: " + value; }} ]]
3.1.2 格式化工具(Formatter)的应用
在EasyUI中,formatter可以对数据表格(DataGrid)、树形控件(Tree)、下拉选择器(Combobox)等组件的数据进行格式化输出。具体实现方法为定义一个函数,该函数根据数据项来返回特定的格式化后的字符串,然后将这个函数作为formatter的参数。
以下是一个使用formatter在DataGrid中自定义显示用户余额的示例:
columns: [[
{field:'id',title:'ID',width:50},
{field:'username',title:'User Name',width:100},
{field:'balance',title:'Balance',width:80, formatter: function(value, row, index) {
return "$" + value.toFixed(2);
}}
在这个例子中,formatter函数接收三个参数: value
是字段值, row
是当前行的数据对象, index
是当前行的索引。函数的作用是将余额数值格式化为带有美元符号和保留两位小数的字符串。
这种自定义格式化的功能,使得开发者可以控制数据在用户界面中的显示方式,使界面显示更加友好和符合业务需求。
3.2 核心组件的扩展与定制
3.2.1 组件的主题定制与应用
jQuery EasyUI允许用户通过改变主题来定制界面的外观。主题是一套CSS样式,定义了控件的视觉样式,比如颜色、边框、字体等。EasyUI默认提供了多种主题,用户也可以通过定制主题来自定义样式。
自定义主题的步骤如下:
-
复制现有主题文件夹: 从
easyui/themes
目录中复制一个默认主题的文件夹,例如复制default
文件夹并命名为custom
。 -
修改CSS文件: 在
custom
文件夹下修改CSS文件。可以更改color.css
文件来定制颜色主题,或者直接在custom.css
中修改特定控件的样式。 -
定义新的CSS类: 在
custom.css
中可以定义新的CSS类来覆盖默认样式。例如:
css .custom-datagrid { border: 1px solid #ccc !important; padding: 5px; }
在上述CSS代码中, .custom-datagrid
类为数据表格定义了新的边框和内边距样式。
- 引用自定义主题: 在页面的
<head>
标签中引入自定义的CSS文件:
html <link rel="stylesheet" type="text/css" href="easyui/themes/custom/easyui.css"> <link rel="stylesheet" type="text/css" href="easyui/themes/custom/icon.css">
重要: 确保自定义CSS在默认主题的CSS之后被引入,这样它才能覆盖默认样式。
- 应用新的主题: 在初始化控件时使用
theme
参数应用新的主题:
javascript $('#tt').datagrid({ theme: 'custom', // 使用自定义主题 // 其他初始化参数... });
通过这些步骤,开发者可以创建出符合企业品牌或者个人喜好的界面主题。
3.2.2 组件事件与API的深入理解
jQuery EasyUI组件的事件系统允许开发者对组件的行为进行监听和响应。每个组件都有各自特定的事件,而事件通常可以分为两类:用户交互事件和内部事件。
用户交互事件 是用户直接操作组件时触发的事件,如点击、双击、键盘操作等。例如,在数据表格(DataGrid)组件中,可以监听 onDblClickRow
事件来处理双击行时的行为。
内部事件 是组件在执行某些内部操作时触发的事件,如数据加载完成、错误发生等。在DataGrid组件中, onLoadSuccess
是一个内部事件,当数据加载成功时触发。
下面是一个数据表格(DataGrid)组件事件监听的示例:
$('#tt').datagrid({
// 初始化参数...
}).datagrid('bind', {
'onDblClickRow': function(index, row) {
// 双击行时触发的事件处理
alert("Double clicked on row: " + index);
},
'onLoadSuccess': function() {
// 数据加载成功时触发的事件处理
alert("Data loaded successfully!");
}
// 其他事件监听...
});
此外, 组件的API 是指组件提供的方法,这些方法允许开发者以编程方式与组件交互。例如,使用API来获取DataGrid中的数据,或者在树形控件(Tree)中展开某个节点。
API通常以组件ID为前缀,如 $('#tt').datagrid('method')
表示调用ID为 tt
的DataGrid组件的方法。
要深入了解jQuery EasyUI的事件系统和API,可以参考官方文档中的API指南部分,或者查看组件源代码了解详细信息。
以上内容展示了如何通过定制和扩展主题来改善用户体验,并深入理解组件事件和API的应用,这对于构建一个功能强大且用户友好的Web应用至关重要。
4. EasyLoader的按需加载机制
4.1 EasyLoader的基本概念与工作原理
按需加载的优势与应用场景
在现代Web开发中,性能优化是一个永恒的话题。随着前端应用日趋复杂,页面加载的资源也变得越来越多,导致页面加载时间变长,用户体验受到影响。为了提高页面加载性能,一种有效的策略就是按需加载资源。而EasyLoader就是jQuery EasyUI框架提供的一个轻量级的模块加载器,专门用于实现资源的按需加载。
按需加载,顾名思义,就是指在需要的时候才加载相关资源,而非页面加载时就加载所有资源。这种方式可以减少初始页面的加载时间,加快页面渲染速度,提高用户体验。同时,按需加载还可以降低服务器带宽消耗,对于提升网站的可扩展性也有一定的帮助。
EasyLoader的应用场景广泛,适用于任何需要动态加载JavaScript文件和CSS样式表的场合。特别是对于具有多种功能模块的大型Web应用,利用EasyLoader进行模块化加载能够使应用结构更清晰,模块间耦合度降低,后期维护和功能扩展变得更加容易。
EasyLoader的配置与使用方法
EasyLoader的配置相对简单,使用时主要通过 $.easyLoader
方法来实现模块的按需加载。下面是一个基本的使用示例:
$.easyLoader({
require: 'js/required-file.js',
load: function() {
// 文件加载成功后执行的回调函数
},
error: function() {
// 文件加载失败时执行的回调函数
}
});
在上述代码中, require
属性指定了需要加载的JavaScript文件路径。当文件加载完成或者加载失败时,可以通过 load
和 error
属性指定的回调函数进行相应的处理。
除了加载JavaScript文件,EasyLoader还能够加载CSS文件:
$.easyLoader({
require: 'css/required-file.css'
});
在实际应用中,可以结合HTML的 data-require
属性,实现对页面元素的按需加载控制。例如:
<a href="javascript:void(0);" data-require="js/plugin.js">Plugin</a>
当用户点击这个链接时,EasyLoader会自动加载 js/plugin.js
文件。这种方式可以实现完全无刷新的按需加载,提升用户体验。
4.2 延迟加载组件的实践技巧
延迟加载与性能优化
延迟加载是一种常用的性能优化技术,其核心思想是将不立即需要的资源或内容延后加载,以减少初始页面的加载时间。在Web应用中,图片、脚本、样式表等资源都可以通过延迟加载的方式进行优化。
对于图片资源来说,通常可以采用懒加载技术,即只加载用户正在或将要查看的图片区域内的图片,而将其他图片延迟加载。这不仅能够提高页面渲染速度,还能在一定程度上降低服务器的负载和带宽消耗。
对于JavaScript和CSS文件来说,可以基于用户的操作或页面特定的行为事件来触发加载。例如,当用户滚动到页面的某个区域时,再加载该区域所需的模块或样式。
与后端数据交互的最佳实践
在使用jQuery EasyUI进行Web开发时,往往需要和服务器进行频繁的数据交互。在这一过程中,实现延迟加载与数据交互的结合,可以进一步优化用户体验。
首先,对于动态内容的加载,可以采用AJAX方式,根据用户的请求异步加载数据,而不是一次性加载所有数据。这样可以减少初始页面加载的资源,同时避免了不必要的数据处理和网络传输。
其次,对于页面中的表格或者列表,可以实现分页或无限滚动。这样,用户在浏览数据时,只有当前页或即将进入视图的数据才会被加载,而其他数据则可以等待需要时再加载。
最后,对于Web应用中的一些交互元素,比如模态框、工具提示等,可以采用懒加载技术。它们在用户实际需要时才被加载和初始化,避免了页面加载时即加载不必要的JavaScript代码。
通过这些实践技巧的结合使用,可以显著提升Web应用的性能和用户体验。下一章节将介绍移动版支持与响应式设计的相关内容,让我们的应用能够更好地适应各种设备和屏幕尺寸。
5. 移动版支持与响应式设计
5.1 移动端界面适配的策略
5.1.1 响应式设计的重要性与实施方法
在互联网的浪潮下,用户使用移动设备浏览网页已成为常态。因此,为网站带来移动版支持并实现响应式设计,已成为前端开发者的重要任务之一。响应式设计(Responsive Design)通过使用灵活的布局,使得网站能在不同屏幕尺寸的设备上都能呈现出良好的浏览体验。
实现响应式设计需要采用特定的前端技术,如媒体查询(Media Queries)、流式布局(Fluid Layouts)、弹性图片(Elastic Images)等。媒体查询允许我们根据设备的特性(如屏幕宽度、高度等)应用不同的CSS样式规则。流式布局则意味着元素的大小和位置应随视口(viewport)的改变而变化,而弹性图片则是为了保证图片不会在小屏幕设备上拉伸变形。
具体实施响应式设计的步骤大致可以分为以下几个阶段:
-
确定设计目标 :首先应明确网站的主要目标用户群体以及他们最常使用的设备类型。
-
使用流式布局 :将容器的宽度设置为百分比,而非固定像素值。通过CSS的
max-width
和min-width
属性,限制容器的最大和最小宽度。 -
媒体查询优化 :通过添加媒体查询规则,为不同屏幕尺寸定义特定的样式。例如:
css @media (max-width: 768px) { body { font-size: 14px; } header { padding: 10px 0; } /* 其他样式 */ }
在这段代码中,当视口宽度小于768像素时,页面中的字体大小、头部高度等样式会有所调整。
-
测试与调整 :在不同设备和浏览器上测试网站,以确保在各种设备上都能正常显示。使用开发者工具中的设备模拟功能可以方便地进行测试。
-
使用框架与工具 :利用成熟的前端框架和工具(如Bootstrap、Foundation等)可以大大简化响应式设计的开发过程。
-
优先移动端设计 :针对移动设备设计界面后,再通过媒体查询逐步为桌面端优化布局和样式。这种方法称为移动优先(Mobile First)设计策略。
响应式设计不只关乎美观,更关乎用户体验和网站的可用性。一个在移动设备上表现良好的网站,可以有效提升用户留存率,增加转化率。
5.1.2 媒体查询与断点的设置
媒体查询是实现响应式设计的核心技术之一,它允许开发者根据设备的不同特性(如屏幕尺寸、方向等)应用不同的CSS样式。媒体查询的语法简洁,易于理解和使用。
媒体查询的基本语法如下:
@media not|only mediatype and (expressions) {
/* CSS 规则 */
}
其中, mediatype
指定了媒体类型,常用的媒体类型包括 screen
(用于电脑屏幕、移动设备等)、 print
(用于打印机和打印预览)等。 expressions
则包含一个或多个表达式,用于检测设备的特性。
断点的设置
在响应式设计中,断点(Breakpoints)指的是媒体查询中用到的关键尺寸值,它们标志着布局和设计的转换点。断点的选择没有固定规则,通常基于目标设备的统计数据以及设计的需要。常见的断点值有 320px(小屏手机)、480px(较大屏手机)、768px(平板)、992px(桌面显示器)等。
例如,下面是一组媒体查询的示例,用于设置不同屏幕尺寸下的样式规则:
/* 超小屏幕设备(手机,600px 及以下) */
@media (max-width: 600px) {
.example {
font-size: 12px;
}
}
/* 小屏幕设备(平板,768px 及以上) */
@media (min-width: 768px) {
.example {
font-size: 14px;
}
}
/* 中等屏幕设备(桌面显示器,992px 及以上) */
@media (min-width: 992px) {
.example {
font-size: 16px;
}
}
/* 大屏幕设备(大桌面显示器,1200px 及以上) */
@media (min-width: 1200px) {
.example {
font-size: 18px;
}
}
通过在CSS中设置不同的断点,我们可以使得网站在不同设备的屏幕上均能提供良好的浏览体验。需要注意的是,随着设备种类的不断增多,为每种设备设置一个断点并不是一个好的做法。相反,应该以“内容优先”的设计理念为指导,通过合理使用媒体查询,使得网站能够灵活地适应多种设备。
媒体查询的使用使得网站能够在多种设备上呈现出适应性强的布局。然而,响应式设计不应该仅仅是对布局的改变,更应该考虑到用户体验的各个方面,如字体大小、图片尺寸、按钮点击区域的大小等。此外,使用媒体查询时,还应该注意以下几点:
- 测试 :确保在实际目标设备上测试过你的媒体查询规则。
- 清晰性 :媒体查询应保持简洁,易于维护。
- 兼容性 :某些旧版浏览器可能不支持媒体查询,需要做好兼容性处理。
合理使用媒体查询和断点,可以让你的网站在不同设备上都能保持良好的可用性和视觉效果。
6. 更新日志和许可协议说明
6.1 版本更新日志的解读
6.1.1 更新日志的阅读与分析
版本更新日志是了解软件更新情况的重要文档。它记录了每个版本推出时所包含的更改,这些更改可能是新增的功能、性能优化、修复的bug,或者对现有功能的改进等。对于开发者而言,了解这些更新内容,能够帮助他们更好地使用软件,提高开发效率。
在阅读更新日志时,应该重点注意以下几点:
- 新增功能(New Features):了解新版本带来了哪些新特性,是否可以利用这些新功能来优化现有的开发流程或增强应用的功能。
- 问题修复(Bug Fixes):查看是否有修复了之前版本中的bug,这些修复可能直接影响到应用的稳定性。
- 性能改进(Performance Improvements):性能的提升可以让应用运行得更快,用户体验更好。
- 兼容性更新(Compatibility Changes):特别注意是否引入了对新系统或浏览器版本的支持,或者更改了对旧版本的支持策略。
6.1.2 版本更新带来的新特性
在了解了如何阅读更新日志后,我们需要关注的是每个版本更新带来的新特性。以jQuery EasyUI为例,新特性可能是:
- 新增的界面组件,提供了更加丰富的用户界面选项。
- 对现有组件的功能增强,如更加强大的数据处理能力或更精细的自定义选项。
- 性能优化,比如提升了DOM操作的效率,或者减少了资源加载时间。
- 新的API接口,方便开发者更简单地实现特定功能。
在具体的学习和应用这些新特性时,应结合实际的项目需求,逐步掌握并应用到项目中去。
6.2 许可协议与用户指南
6.2.1 开源许可协议的解读
开源许可协议是一份法律文件,规定了用户在使用开源软件时必须遵守的条款。例如,jQuery EasyUI使用的可能是MIT许可协议,这种许可协议通常具有以下特点:
- 允许个人和公司使用、复制、修改、合并、发布、分发、再许可和/或销售副本。
- 必须保留版权声明和本许可声明,以及对任何修改的声明。
- 对软件或其衍生作品的使用,不得包含任何形式的担保。
了解这些条款对于确保合法使用开源软件至关重要。开发者在使用开源软件时,应确保自己的使用方式符合许可协议的规定,以避免任何潜在的法律风险。
6.2.2 用户支持与社区资源介绍
用户支持和社区资源对于开发者来说是宝贵的资源。在jQuery EasyUI的官方网站或相关社区,开发者可以获取以下支持:
- 官方文档:提供了详细的API参考、教程、示例代码和最佳实践。
- 论坛和问答:用户可以在论坛上提问或回答他人的问题,以获得帮助或帮助他人。
- 社区插件:社区成员贡献的插件或扩展,可以增强或定制软件的功能。
积极地利用这些资源,开发者不仅能够快速解决遇到的问题,还能够与其他开发者交流,不断学习和提升自己的技能水平。
本文还有配套的精品资源,点击获取
简介:jQuery EasyUI 1.9.4是一个轻量级的前端开发框架,基于jQuery,提供丰富的JavaScript组件,以快速构建用户界面。该版本包含了核心库、组件实现、组件加载器、移动端支持、更新日志与许可协议、帮助文档及示例代码。本课程将详细介绍如何使用EasyUI来提高Web应用开发的效率,并通过源代码和示例学习组件的使用方法。
本文还有配套的精品资源,点击获取