本文档介绍了 WordPress 核心视口数据包(core/viewport)中的选择器 isViewportMatch,用于根据视口查询判断当前设备类型,例如移动端或非移动端。
import { store as viewportStore } from '@wordpress/viewport';
import { useSelect } from '@wordpress/data';
import { __ } from '@wordpress/i18n';
const ExampleComponent = () => {
const isMobile = useSelect(
( select ) => select( viewportStore ).isViewportMatch( '< small' ),
[]
);
return isMobile ? (
<div>{ __( 'Mobile' ) }</div>
) : (
<div>{ __( 'Not Mobile' ) }</div>
);
};参数 state 为 ViewportState 对象,query 为 ViewportQuery 字符串,返回值为布尔类型。
Namespace: core/viewport.
Returns true if the viewport matches the given query, or false otherwise.
Usage
import { store as viewportStore } from '@wordpress/viewport';
import { useSelect } from '@wordpress/data';
import { __ } from '@wordpress/i18n';
const ExampleComponent = () => {
const isMobile = useSelect(
( select ) => select( viewportStore ).isViewportMatch( '< small' ),
[]
);
return isMobile ? (
<div>{ __( 'Mobile' ) }</div>
) : (
<div>{ __( 'Not Mobile' ) }</div>
);
};
Parameters
ViewportState: Viewport state object.ViewportQuery: Query string. Includes operator and breakpoint name, space separated. Operator defaults to >=.Returns
boolean: Whether viewport matches query.The actions in this package shouldn’t be used directly.
Nothing to document.