Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
missman
incubator-echarts
提交
34cee641
I
incubator-echarts
项目概览
missman
/
incubator-echarts
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
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,发现更多精彩内容 >>
提交
34cee641
编写于
12月 31, 2017
作者:
P
pissang
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Fix setDirty of updateTransform (by 100pah).
上级
db620045
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
41 addition
and
33 deletion
+41
-33
src/echarts.js
src/echarts.js
+13
-10
src/stream/Scheduler.js
src/stream/Scheduler.js
+28
-23
未找到文件。
src/echarts.js
浏览文件 @
34cee641
...
...
@@ -858,26 +858,26 @@ var updateMethods = {
ChartView
.
markUpdateMethod
(
payload
,
'
updateTransform
'
);
var
seriesModels
=
[]
;
var
dirtyMap
=
zrUtil
.
createHashMap
()
;
ecModel
.
eachSeries
(
function
(
seriesModel
)
{
var
chartView
=
ecIns
.
_chartsMap
[
seriesModel
.
__viewId
];
if
(
chartView
.
updateTransform
)
{
var
result
=
chartView
.
updateTransform
&&
chartView
.
updateTransform
(
seriesModel
,
ecModel
,
api
,
payload
);
result
&&
result
.
update
&&
seriesModels
.
push
(
seriesModel
);
result
&&
result
.
update
&&
dirtyMap
.
set
(
seriesModel
.
uid
,
1
);
}
else
{
seriesModels
.
push
(
seriesModel
);
dirtyMap
.
set
(
seriesModel
.
uid
,
1
);
}
});
// Keep pipe to the exist pipeline because it depends on the render task of the full pipeline.
// this._scheduler.performVisualTasks(visualFuncs, ecModel, payload, 'layout', true);
this
.
_scheduler
.
performVisualTasks
(
visualFuncs
,
ecModel
,
payload
,
{
setDirty
:
true
,
seriesModels
:
seriesModels
}
visualFuncs
,
ecModel
,
payload
,
{
setDirty
:
true
,
dirtyMap
:
dirtyMap
}
);
renderSeries
(
this
,
ecModel
,
this
.
_api
,
payload
,
seriesModels
);
renderSeries
(
this
,
ecModel
,
this
.
_api
,
payload
,
dirtyMap
);
performPostUpdateFuncs
(
ecModel
,
this
.
_api
);
},
...
...
@@ -1412,18 +1412,21 @@ function render(ecIns, ecModel, api, payload) {
* Render each chart and component
* @private
*/
function
renderSeries
(
ecIns
,
ecModel
,
api
,
payload
,
dirty
SeriesModels
)
{
function
renderSeries
(
ecIns
,
ecModel
,
api
,
payload
,
dirty
Map
)
{
// Render all charts
var
scheduler
=
ecIns
.
_scheduler
;
var
unfinished
;
dirtySeriesModels
?
each
(
dirtySeriesModels
,
doEach
)
:
ecModel
.
eachSeries
(
doEach
);
function
doEach
(
seriesModel
)
{
ecModel
.
eachSeries
(
function
(
seriesModel
)
{
var
chartView
=
ecIns
.
_chartsMap
[
seriesModel
.
__viewId
];
chartView
.
__alive
=
true
;
var
renderTask
=
chartView
.
renderTask
;
scheduler
.
updatePayload
(
renderTask
,
payload
);
dirtySeriesModels
&&
renderTask
.
dirty
();
if
(
dirtyMap
&&
dirtyMap
.
get
(
seriesModel
.
uid
))
{
renderTask
.
dirty
();
}
unfinished
|=
renderTask
.
perform
(
scheduler
.
getPerformArgs
(
renderTask
));
chartView
.
group
.
silent
=
!!
seriesModel
.
get
(
'
silent
'
);
...
...
@@ -1431,7 +1434,7 @@ function renderSeries(ecIns, ecModel, api, payload, dirtySeriesModels) {
updateZ
(
seriesModel
,
chartView
);
updateBlend
(
seriesModel
,
chartView
);
}
}
);
scheduler
.
unfinished
|=
unfinished
;
// If use hover layer
...
...
src/stream/Scheduler.js
浏览文件 @
34cee641
...
...
@@ -150,12 +150,14 @@ function performStageTasks(scheduler, stageHandlers, ecModel, payload, opt) {
var
overallTask
=
stageHandlerRecord
.
overallTask
;
if
(
overallTask
)
{
if
(
opt
.
setDirty
)
{
overallTask
.
dirty
();
each
(
overallTask
.
agentStubs
,
function
(
stub
)
{
var
overallNeedDirty
;
each
(
overallTask
.
agentStubs
,
function
(
stub
)
{
if
(
needSetDirty
(
opt
,
stub
)
)
{
stub
.
dirty
();
});
}
overallNeedDirty
=
true
;
}
});
overallNeedDirty
&&
overallTask
.
dirty
();
updatePayload
(
overallTask
,
payload
);
var
performArgs
=
scheduler
.
getPerformArgs
(
overallTask
,
opt
.
block
);
// Execute stubs firstly, which may set the overall task dirty,
...
...
@@ -166,27 +168,30 @@ function performStageTasks(scheduler, stageHandlers, ecModel, payload, opt) {
unfinished
|=
overallTask
.
perform
(
performArgs
);
}
else
if
(
seriesTaskMap
)
{
opt
.
seriesModels
?
each
(
opt
.
seriesModels
,
eachSeries
)
:
ecModel
.
eachRawSeries
(
eachSeries
);
}
function
eachSeries
(
seriesModel
)
{
var
task
=
seriesTaskMap
.
get
(
seriesModel
.
uid
);
if
(
!
task
)
{
return
;
}
opt
.
setDirty
&&
task
.
dirty
();
var
performArgs
=
scheduler
.
getPerformArgs
(
task
,
opt
.
block
);
// ??? chck skip necessary.
performArgs
.
skip
=
!
stageHandler
.
processRawSeries
&&
ecModel
.
isSeriesFiltered
(
seriesModel
);
updatePayload
(
task
,
payload
);
unfinished
|=
task
.
perform
(
performArgs
);
ecModel
.
eachRawSeries
(
function
(
seriesModel
)
{
var
pipelineId
=
seriesModel
.
uid
;
var
task
=
seriesTaskMap
.
get
(
pipelineId
);
if
(
!
task
)
{
return
;
}
if
(
needSetDirty
(
opt
,
task
))
{
task
.
dirty
();
}
var
performArgs
=
scheduler
.
getPerformArgs
(
task
,
opt
.
block
);
// ??? chck skip necessary.
performArgs
.
skip
=
!
stageHandler
.
processRawSeries
&&
ecModel
.
isSeriesFiltered
(
seriesModel
);
updatePayload
(
task
,
payload
);
unfinished
|=
task
.
perform
(
performArgs
);
});
}
});
function
needSetDirty
(
opt
,
task
)
{
return
opt
.
setDirty
&&
(
!
opt
.
dirtyMap
||
opt
.
dirtyMap
.
get
(
task
.
__pipelineId
));
}
scheduler
.
unfinished
|=
unfinished
;
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录