UNPKG

@nutui/nutui-react-taro

Version:

京东风格的轻量级移动端 React 组件库,支持一套代码生成 H5 和小程序

75 lines (74 loc) 2.86 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); Object.defineProperty(exports, "Grid", { enumerable: true, get: function() { return Grid; } }); var _interop_require_default = require("@swc/helpers/_/_interop_require_default"); var _define_property = require("@swc/helpers/_/_define_property"); var _object_spread = require("@swc/helpers/_/_object_spread"); var _object_without_properties = require("@swc/helpers/_/_object_without_properties"); var _react = /*#__PURE__*/ _interop_require_default._(require("react")); var _classnames = /*#__PURE__*/ _interop_require_default._(require("classnames")); var _components = require("@tarojs/components"); var _context = /*#__PURE__*/ _interop_require_default._(require("./context")); var _griditem = require("../griditem/griditem"); var defaultProps = { columns: 4, gap: 9, center: true, square: true, reverse: false, direction: 'vertical' }; var Grid = function Grid(props) { var _$_object_spread = (0, _object_spread._)({}, defaultProps, props), children = _$_object_spread.children, columns = _$_object_spread.columns, gap = _$_object_spread.gap, center = _$_object_spread.center, square = _$_object_spread.square, reverse = _$_object_spread.reverse, direction = _$_object_spread.direction, style = _$_object_spread.style, className = _$_object_spread.className, onClick = _$_object_spread.onClick, rest = (0, _object_without_properties._)(_$_object_spread, [ "children", "columns", "gap", "center", "square", "reverse", "direction", "style", "className", "onClick" ]); var childrenDom = _react.default.Children.toArray(children); var classPrefix = 'nut-grid'; var rootClass = function rootClass() { return (0, _classnames.default)(classPrefix, (0, _define_property._)({}, "".concat(classPrefix, "-border"), !gap), className); }; var rootStyle = function rootStyle() { var styleSelf = {}; if (style) { styleSelf = style; } return styleSelf; }; return(// @ts-ignore /*#__PURE__*/ /*#__PURE__*/ _react.default.createElement(_components.View, (0, _object_spread._)({ className: rootClass(), style: rootStyle() }, rest), /*#__PURE__*/ _react.default.createElement(_context.default.Provider, { value: { onClick: onClick } }, childrenDom.map(function(item, idex) { return /*#__PURE__*/ _react.default.cloneElement(item, { index: idex, columns: columns, center: center, gap: gap, square: square, reverse: reverse, direction: direction }); })))); }; Grid.displayName = 'NutGrid'; Grid.Item = _griditem.GridItem;