Match-id-315cebc9891bb15a1e6cf5d419fd71f880796f3a

This commit is contained in:
* 2023-05-25 09:40:45 +08:00
parent 5ad4f734c3
commit 43023ca26a
8 changed files with 20 additions and 23 deletions

View File

@ -18,8 +18,8 @@ import { createPortal } from '../renderer/components/CreatePortal';
import type { Container } from './DOMOperator';
import { isElement } from './utils/Common';
import { findDOMByClassInst } from '../renderer/vnode/VNodeUtils';
import {Callback} from '../renderer/UpdateHandler';
import {listenSimulatedDelegatedEvents} from '../event/EventBinding';
import { Callback } from '../renderer/UpdateHandler';
import { listenSimulatedDelegatedEvents } from '../event/EventBinding';
function createRoot(children: any, container: Container, callback?: Callback) {
// 清空容器

View File

@ -16,8 +16,8 @@
/**
*
*/
import {allDelegatedHorizonEvents, simulatedDelegatedEvents} from './EventHub';
import {isDocument} from '../dom/utils/Common';
import { allDelegatedHorizonEvents, simulatedDelegatedEvents } from './EventHub';
import { isDocument } from '../dom/utils/Common';
import { getNearestVNode, getNonDelegatedListenerMap } from '../dom/DOMInternalKeys';
import { asyncUpdates, runDiscreteUpdates } from '../renderer/TreeBuilder';
import { handleEventMain } from './HorizonEventMain';

View File

@ -16,7 +16,7 @@
// 需要委托的horizon事件和原生事件对应关系
export const allDelegatedHorizonEvents = new Map();
// 模拟委托事件,事件本事不冒泡,需要其他事件来触发冒泡过程
// 模拟委托事件,不冒泡事件需要利用其他事件来触发冒泡过程
export const simulatedDelegatedEvents = ['onMouseEnter', 'onMouseLeave'];
// 所有委托的原生事件集合
export const allDelegatedNativeEvents = new Set();

View File

@ -30,8 +30,8 @@ import {
import { getDomTag } from '../dom/utils/Common';
import { updateInputHandlerIfChanged } from '../dom/valueHandler/ValueChangeHandler';
import { getDom } from '../dom/DOMInternalKeys';
import {recordChangeEventTargets, shouldControlValue, tryControlValue} from './FormValueController';
import {getMouseEnterListeners} from './MouseEvent';
import { recordChangeEventTargets, shouldControlValue, tryControlValue } from './FormValueController';
import { getMouseEnterListeners } from './MouseEvent';
// web规范鼠标右键key值
const RIGHT_MOUSE_BUTTON = 2;

View File

@ -171,8 +171,5 @@ function getParent(inst: VNode | null): VNode | null {
do {
inst = inst.parent;
} while (inst && inst.tag !== DomComponent);
if (inst) {
return inst;
}
return null;
return inst || null;
}

View File

@ -13,13 +13,13 @@
* See the Mulan PSL v2 for more details.
*/
import {getNearestVNode} from '../dom/DOMInternalKeys';
import {WrappedEvent} from './EventWrapper';
import {VNode} from '../renderer/vnode/VNode';
import {AnyNativeEvent, ListenerUnitList} from './Types';
import {DomComponent, DomText} from '../renderer/vnode/VNodeTags';
import {collectMouseListeners} from './ListenerGetter';
import {getNearestMountedVNode} from './utils';
import { getNearestVNode } from '../dom/DOMInternalKeys';
import { WrappedEvent } from './EventWrapper';
import { VNode } from '../renderer/vnode/VNode';
import { AnyNativeEvent, ListenerUnitList } from './Types';
import { DomComponent, DomText } from '../renderer/vnode/VNodeTags';
import { collectMouseListeners } from './ListenerGetter';
import { getNearestMountedVNode } from './utils';
/**
* mouseEnter和mouseLeave事件不冒泡

View File

@ -13,9 +13,9 @@
* See the Mulan PSL v2 for more details.
*/
import {VNode} from '../renderer/vnode/VNode';
import {Addition, FlagUtils} from '../renderer/vnode/VNodeFlags';
import {TreeRoot} from '../renderer/vnode/VNodeTags';
import { VNode } from '../renderer/vnode/VNode';
import { Addition, FlagUtils } from '../renderer/vnode/VNodeFlags';
import { TreeRoot } from '../renderer/vnode/VNodeTags';
export function isInputElement(dom?: HTMLElement): boolean {
return dom instanceof HTMLInputElement || dom instanceof HTMLTextAreaElement;

View File

@ -16,8 +16,8 @@
import type { VNode } from '../Types';
import { resetNamespaceCtx, setNamespaceCtx } from '../ContextSaver';
import { createChildrenByDiff } from '../diff/nodeDiffComparator';
import {popCurrentRoot, pushCurrentRoot} from '../RootStack';
import {listenSimulatedDelegatedEvents} from '../../event/EventBinding';
import { popCurrentRoot, pushCurrentRoot } from '../RootStack';
import { listenSimulatedDelegatedEvents } from '../../event/EventBinding';
export function bubbleRender(processing: VNode) {
resetNamespaceCtx(processing);