antd-mobile-taro-ui
Version:
以antd-mobile为设计标准,基于taro框架的微信小程序组件库
52 lines (38 loc) • 2.34 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.ListItem = void 0;
var _components = require("@tarojs/components");
var _classnames = _interopRequireDefault(require("classnames"));
var _react = _interopRequireDefault(require("react"));
var _isNodeWithContent = require("antd-mobile/es/utils/is-node-with-content");
var _nativeProps = require("antd-mobile/es/utils/native-props");
var _antdMobileTaroIcons = require("antd-mobile-taro-icons");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
const classPrefix = `adm-list-item`;
const ListItem = props => {
var _a;
const clickable = (_a = props.clickable) !== null && _a !== void 0 ? _a : !!props.onClick;
const arrow = props.arrow === undefined ? clickable : props.arrow;
const content = _react.default.createElement(_components.View, {
className: `${classPrefix}-content`
}, (0, _isNodeWithContent.isNodeWithContent)(props.prefix) && _react.default.createElement(_components.View, {
className: `${classPrefix}-content-prefix`
}, props.prefix), _react.default.createElement(_components.View, {
className: `${classPrefix}-content-main`
}, (0, _isNodeWithContent.isNodeWithContent)(props.title) && _react.default.createElement(_components.View, {
className: `${classPrefix}-title`
}, props.title), props.children, (0, _isNodeWithContent.isNodeWithContent)(props.description) && _react.default.createElement(_components.View, {
className: `${classPrefix}-description`
}, props.description)), (0, _isNodeWithContent.isNodeWithContent)(props.extra) && _react.default.createElement(_components.View, {
className: `${classPrefix}-content-extra`
}, props.extra), (0, _isNodeWithContent.isNodeWithContent)(arrow) && _react.default.createElement(_components.View, {
className: `${classPrefix}-content-arrow`
}, arrow === true ? _react.default.createElement(_antdMobileTaroIcons.RightIcon, null) : arrow));
return (0, _nativeProps.withNativeProps)(props, _react.default.createElement(_components.View, {
className: (0, _classnames.default)(`${classPrefix}`, clickable ? ['adm-plain-anchor'] : [], props.disabled && `${classPrefix}-disabled`),
onClick: props.disabled ? undefined : props.onClick
}, content));
};
exports.ListItem = ListItem;