Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
半栈学徒
incubator-echarts
提交
801fc009
I
incubator-echarts
项目概览
半栈学徒
/
incubator-echarts
与 Fork 源项目一致
从无法访问的项目Fork
通知
5
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
I
incubator-echarts
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
801fc009
编写于
1月 17, 2018
作者:
S
sushuang
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
[pie] Fix #7515 (selected does not work in option data item).
上级
b449ed4f
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
51 addition
and
5 deletion
+51
-5
src/component/helper/selectableMixin.js
src/component/helper/selectableMixin.js
+6
-1
src/data/helper/dataProvider.js
src/data/helper/dataProvider.js
+38
-2
test/pie.html
test/pie.html
+7
-2
未找到文件。
src/component/helper/selectableMixin.js
浏览文件 @
801fc009
...
...
@@ -5,6 +5,7 @@
*/
import
*
as
zrUtil
from
'
zrender/src/core/util
'
;
import
{
retrieveRawAttr
}
from
'
../../data/helper/dataProvider
'
;
export
default
{
...
...
@@ -22,7 +23,11 @@ export default {
var
valueDim
=
ecList
.
mapDimension
(
'
value
'
);
var
targetList
=
this
.
_targetList
=
[];
for
(
var
i
=
0
,
len
=
ecList
.
count
();
i
<
len
;
i
++
)
{
targetList
.
push
({
name
:
ecList
.
getName
(
i
),
value
:
ecList
.
get
(
valueDim
,
i
)});
targetList
.
push
({
name
:
ecList
.
getName
(
i
),
value
:
ecList
.
get
(
valueDim
,
i
),
selected
:
retrieveRawAttr
(
ecList
,
i
,
'
selected
'
)
});
}
}
this
.
_selectTargetMap
=
zrUtil
.
reduce
(
targetList
||
[],
function
(
targetMap
,
target
)
{
...
...
src/data/helper/dataProvider.js
浏览文件 @
801fc009
...
...
@@ -3,13 +3,15 @@
// merge with defaultDimValueGetter?
import
{
__DEV__
}
from
'
../../config
'
;
import
{
isTypedArray
,
extend
,
assert
,
each
}
from
'
zrender/src/core/util
'
;
import
{
isTypedArray
,
extend
,
assert
,
each
,
isObject
}
from
'
zrender/src/core/util
'
;
import
{
getDataItemValue
,
isDataItemOption
}
from
'
../../util/model
'
;
import
{
parseDate
}
from
'
../../util/number
'
;
import
Source
from
'
../Source
'
;
import
{
SOURCE_FORMAT_TYPED_ARRAY
,
SOURCE_FORMAT_ARRAY_ROWS
SOURCE_FORMAT_ARRAY_ROWS
,
SOURCE_FORMAT_ORIGINAL
,
SOURCE_FORMAT_OBJECT_ROWS
}
from
'
./sourceType
'
;
/**
...
...
@@ -325,3 +327,37 @@ export function retrieveRawValue(data, dataIndex, dim) {
return
rawValueGetters
[
sourceFormat
](
dataItem
,
dataIndex
,
dimIndex
,
dimName
);
}
/**
* Compatible with some cases (in pie, map) like:
* data: [{name: 'xx', value: 5, selected: true}, ...]
* where only sourceFormat is 'original' and 'objectRows' supported.
*
* ??? TODO
* Supported detail options in data item when using 'arrayRows'.
*
* @param {module:echarts/data/List} data
* @param {number} dataIndex
* @param {string} attr like 'selected'
*/
export
function
retrieveRawAttr
(
data
,
dataIndex
,
attr
)
{
if
(
!
data
)
{
return
;
}
var
sourceFormat
=
data
.
getProvider
().
getSource
().
sourceFormat
;
if
(
sourceFormat
!==
SOURCE_FORMAT_ORIGINAL
&&
sourceFormat
!==
SOURCE_FORMAT_OBJECT_ROWS
)
{
return
;
}
var
dataItem
=
data
.
getRawDataItem
(
dataIndex
);
if
(
sourceFormat
===
SOURCE_FORMAT_ORIGINAL
&&
!
isObject
(
dataItem
))
{
dataItem
=
null
;
}
if
(
dataItem
)
{
return
dataItem
[
attr
];
}
}
test/pie.html
浏览文件 @
801fc009
...
...
@@ -51,7 +51,7 @@
};
chart
.
setOption
({
legend
:
{
data
:
[
'
直接访问
'
,
'
邮件营销
'
,
'
联盟广告
'
,
'
视频广告
'
,
'
搜索引擎
'
]
data
:
[
'
直接访问
(初始就被选中)
'
,
'
邮件营销
'
,
'
联盟广告
'
,
'
视频广告
'
,
'
搜索引擎
'
]
// data: []
},
toolbox
:
{
...
...
@@ -89,7 +89,12 @@
// }
// },
data
:[
{
value
:
235
,
name
:
'
直接访问
'
,
cursor
:
'
move
'
},
{
value
:
235
,
name
:
'
直接访问(初始就被选中)
'
,
cursor
:
'
move
'
,
selected
:
true
},
{
value
:
163
,
name
:
'
标签在内部
'
,
label
:
{
normal
:
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录