@antmjs/vantui
Version:
一套适用于Taro3及React的vantui组件库
86 lines (85 loc) • 3.77 kB
JavaScript
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.CascaderItem = void 0;
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var _react = require("react");
var _components = require("@tarojs/components");
var _classnames = _interopRequireDefault(require("classnames"));
var _icon = require("../icon");
var _loading = require("../loading");
var _jsxRuntime = require("react/jsx-runtime");
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
var defaultProps = {
data: {
text: '',
value: '',
paneKey: '',
disabled: false,
loading: false,
children: []
},
checked: false,
chooseItem: function chooseItem() {},
id: ''
};
var InternalCascaderItem = function InternalCascaderItem(props) {
var _defaultProps$props = _objectSpread(_objectSpread({}, defaultProps), props),
data = _defaultProps$props.data,
checked = _defaultProps$props.checked,
chooseItem = _defaultProps$props.chooseItem,
id = _defaultProps$props.id;
var _useState = (0, _react.useState)(false),
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
loading = _useState2[0],
setLoading = _useState2[1];
var classes = (0, _classnames.default)({
active: checked,
disabled: data.disabled
}, 'van-cascader-item');
(0, _react.useEffect)(function () {
initData();
}, [data]);
var initData = function initData() {
// console.log('------data', data)
};
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.View, {
id: id,
className: classes,
onClick: /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
return _regenerator.default.wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
setLoading(true);
_context.next = 3;
return chooseItem(data);
case 3:
setLoading(false);
case 4:
case "end":
return _context.stop();
}
}, _callee);
})),
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_components.View, {
className: "van-cascader-item__title",
children: data.text
}), loading ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_loading.Loading, {
color: "#969799",
size: 30
}) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.Icon, {
style: checked ? {} : {
display: 'none'
},
name: "success"
})]
});
};
var CascaderItem = InternalCascaderItem;
exports.CascaderItem = CascaderItem;
;