src/component/helper/interactionMutex.js
(完整代码) 1KBdefine(function (require) {
var ATTR = '\0_ec_interaction_mutex';
var interactionMutex = {
take: function (zr, resourceKey, userKey) {
var store = getStore(zr);
store[resourceKey] = userKey;
},
release: function (zr, resourceKey, userKey) {
var store = getStore(zr);
var uKey = store[resourceKey];
if (uKey === userKey) {
store[resourceKey] = null;
}
},
isTaken: function (zr, resourceKey) {
return !!getStore(zr)[resourceKey];
}
};
function getStore(zr) {
return zr[ATTR] || (zr[ATTR] = {});
}
/**
* payload: {
* type: 'takeGlobalCursor',
* key: 'dataZoomSelect', or 'brush', or ...,
* If no userKey, release global cursor.
* }
*/
require('../../echarts').registerAction(
{type: 'takeGlobalCursor', event: 'globalCursorTaken', update: 'update'},
function () {}
);
return interactionMutex;
});
24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明
AI 解读
登录后可用,每次 10 积分,解读结果公开显示在下面。
还没有人解读过这个文件。
