@antmjs/vantui
Version:
一套适用于Taro3及React的vantui组件库
115 lines (114 loc) • 3.87 kB
JavaScript
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = Demo;
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
var _react = _interopRequireDefault(require("react"));
var _components = require("@tarojs/components");
var _vantui = require("@antmjs/vantui");
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; } /* eslint-disable */
var columns = [{
title: '姓名',
dataIndex: 'name',
fixed: 'left',
render: function render(val) {
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.View, {
style: {
color: '#2196F3'
},
children: val
});
}
}, {
title: '年龄',
dataIndex: 'age',
align: 'center',
sort: true
}, {
title: '账户',
dataIndex: 'account',
sort: true
}, {
title: '住址',
dataIndex: 'address'
}, {
title: '爱好',
dataIndex: 'hobby'
}];
function Demo() {
var _react$useState = _react.default.useState({
dataSource: [],
loading: false
}),
_react$useState2 = (0, _slicedToArray2.default)(_react$useState, 2),
state = _react$useState2[0],
changeState = _react$useState2[1];
var setState = function setState(stateNew) {
changeState(_objectSpread(_objectSpread({}, state), stateNew));
};
_react.default.useEffect(function () {
setState({
loading: true
});
setTimeout(function () {
setState({
loading: false,
dataSource: [{
key: '1',
name: '胡彦斌',
age: 37,
account: 20000,
address: '西湖区湖底公园1号',
hobby: '唱歌跳舞唱歌跳舞'
}, {
key: '2',
name: '吴亦凡',
age: 32,
account: 50000,
address: '朝阳区派出所',
hobby: '嗨嗨啊嗨嗨嗨啊嗨'
}, {
key: '36',
name: '王宝强',
age: 31,
account: 40000,
address: '嘟嘟嘟嘟一号',
width: 200,
hobby: '休息♨️休息♨️休息♨️休息♨️休息♨️'
}]
});
}, 2000);
}, []);
var sortAction = function sortAction(col) {
var sortOrder = col.sortOrder,
dataIndex = col.dataIndex;
var dataSource = state.dataSource;
if (sortOrder !== 'descend') {
dataSource.sort(function (a, b) {
return a[dataIndex] - b[dataIndex];
});
} else {
dataSource.sort(function (a, b) {
return b[dataIndex] - a[dataIndex];
});
}
setState({
dataSource: dataSource
});
};
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_vantui.Table, {
columns: columns,
dataSource: state.dataSource,
sortChange: sortAction,
loading: state.loading,
scroll: {
x: 500
},
rowKey: "title"
});
}