Files
wechat_wc/dist/pages/address/index.js
T

351 lines
20 KiB
JavaScript

"use strict";
(wx["webpackJsonp"] = wx["webpackJsonp"] || []).push([["pages/address/index"],{
/***/ "./node_modules/@tarojs/taro-loader/lib/entry-cache.js?name=pages/address/index!./src/pages/address/index.tsx":
/*!********************************************************************************************************************!*\
!*** ./node_modules/@tarojs/taro-loader/lib/entry-cache.js?name=pages/address/index!./src/pages/address/index.tsx ***!
\********************************************************************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": function() { return /* binding */ AddressPage; }
/* harmony export */ });
/* harmony import */ var F_weixin_wordc_node_modules_babel_runtime_helpers_esm_slicedToArray_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js */ "./node_modules/@babel/runtime/helpers/esm/slicedToArray.js");
/* harmony import */ var _tarojs_components__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @tarojs/components */ "./node_modules/@tarojs/plugin-platform-weapp/dist/components-react.js");
/* harmony import */ var _tarojs_taro__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tarojs/taro */ "./node_modules/@tarojs/taro/index.js");
/* harmony import */ var _tarojs_taro__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_tarojs_taro__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ "./node_modules/react/cjs/react.production.min.js");
/* harmony import */ var _utils_store__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils/store */ "./src/utils/store.ts");
/* harmony import */ var _components_ThemeToggle__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../components/ThemeToggle */ "./src/components/ThemeToggle/index.tsx");
/* harmony import */ var _context_ThemeContext__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../context/ThemeContext */ "./src/context/ThemeContext.tsx");
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! react/jsx-runtime */ "./node_modules/react/cjs/react-jsx-runtime.production.min.js");
function AddressPage() {
var _useThemeContext = (0,_context_ThemeContext__WEBPACK_IMPORTED_MODULE_4__.useThemeContext)(),
theme = _useThemeContext.theme;
var _useState = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)([]),
_useState2 = (0,F_weixin_wordc_node_modules_babel_runtime_helpers_esm_slicedToArray_js__WEBPACK_IMPORTED_MODULE_6__["default"])(_useState, 2),
list = _useState2[0],
setList = _useState2[1];
var _useState3 = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null),
_useState4 = (0,F_weixin_wordc_node_modules_babel_runtime_helpers_esm_slicedToArray_js__WEBPACK_IMPORTED_MODULE_6__["default"])(_useState3, 2),
editing = _useState4[0],
setEditing = _useState4[1];
var _useState5 = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false),
_useState6 = (0,F_weixin_wordc_node_modules_babel_runtime_helpers_esm_slicedToArray_js__WEBPACK_IMPORTED_MODULE_6__["default"])(_useState5, 2),
showForm = _useState6[0],
setShowForm = _useState6[1];
var _useState7 = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(''),
_useState8 = (0,F_weixin_wordc_node_modules_babel_runtime_helpers_esm_slicedToArray_js__WEBPACK_IMPORTED_MODULE_6__["default"])(_useState7, 2),
name = _useState8[0],
setName = _useState8[1];
var _useState9 = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(''),
_useState0 = (0,F_weixin_wordc_node_modules_babel_runtime_helpers_esm_slicedToArray_js__WEBPACK_IMPORTED_MODULE_6__["default"])(_useState9, 2),
phone = _useState0[0],
setPhone = _useState0[1];
var _useState1 = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)([]),
_useState10 = (0,F_weixin_wordc_node_modules_babel_runtime_helpers_esm_slicedToArray_js__WEBPACK_IMPORTED_MODULE_6__["default"])(_useState1, 2),
region = _useState10[0],
setRegion = _useState10[1];
var _useState11 = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(''),
_useState12 = (0,F_weixin_wordc_node_modules_babel_runtime_helpers_esm_slicedToArray_js__WEBPACK_IMPORTED_MODULE_6__["default"])(_useState11, 2),
detail = _useState12[0],
setDetail = _useState12[1];
var _useState13 = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false),
_useState14 = (0,F_weixin_wordc_node_modules_babel_runtime_helpers_esm_slicedToArray_js__WEBPACK_IMPORTED_MODULE_6__["default"])(_useState13, 2),
isDefault = _useState14[0],
setIsDefault = _useState14[1];
var load = function load() {
return setList((0,_utils_store__WEBPACK_IMPORTED_MODULE_2__.getAddressList)());
};
(0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(function () {
load();
}, []);
var resetForm = function resetForm() {
setName('');
setPhone('');
setRegion([]);
setDetail('');
setIsDefault(false);
setEditing(null);
};
var openAdd = function openAdd() {
resetForm();
setShowForm(true);
};
var openEdit = function openEdit(item) {
setEditing(item);
setName(item.name);
setPhone(item.phone);
setRegion(item.region);
setDetail(item.detail);
setIsDefault(item.isDefault);
setShowForm(true);
};
var handleDelete = function handleDelete(id) {
_tarojs_taro__WEBPACK_IMPORTED_MODULE_0___default().showModal({
title: '确认删除',
content: '删除后将无法恢复该地址',
success: function success(res) {
if (res.confirm) {
(0,_utils_store__WEBPACK_IMPORTED_MODULE_2__.deleteAddress)(id);
load();
}
}
});
};
var handleCopy = function handleCopy(item) {
var text = "".concat(item.name, " ").concat(item.phone, "\n").concat(item.region.join(' '), " ").concat(item.detail);
_tarojs_taro__WEBPACK_IMPORTED_MODULE_0___default().setClipboardData({
data: text
});
};
var handleSave = function handleSave() {
if (!name.trim() || !phone.trim() || region.length === 0 || !detail.trim()) {
_tarojs_taro__WEBPACK_IMPORTED_MODULE_0___default().showToast({
title: '请填写完整信息',
icon: 'none'
});
return;
}
var payload = {
name: name,
phone: phone,
region: region,
detail: detail,
isDefault: isDefault
};
if (editing) {
(0,_utils_store__WEBPACK_IMPORTED_MODULE_2__.updateAddress)(editing.id, payload);
} else {
(0,_utils_store__WEBPACK_IMPORTED_MODULE_2__.addAddress)(payload);
}
_tarojs_taro__WEBPACK_IMPORTED_MODULE_0___default().showToast({
title: '保存成功',
icon: 'success'
});
setShowForm(false);
resetForm();
load();
};
var onRegionChange = function onRegionChange(e) {
setRegion(e.detail.value || []);
};
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.View, {
className: "theme-".concat(theme),
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsxs)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.View, {
className: "address-page",
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(_components_ThemeToggle__WEBPACK_IMPORTED_MODULE_3__["default"], {}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsxs)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.View, {
className: "page-header dashed-card mt-20",
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.View, {
className: "star-badge"
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsxs)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.View, {
className: "flex-between",
style: {
width: '100%'
},
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.Text, {
className: "back-btn",
onTap: function onTap() {
return _tarojs_taro__WEBPACK_IMPORTED_MODULE_0___default().navigateBack();
},
children: "\u2190"
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.Text, {
className: "page-title",
children: "\u6536\u8D27\u5730\u5740"
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.View, {
style: {
width: '60px'
}
})]
})]
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsxs)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.View, {
className: "address-list",
children: [list.map(function (item) {
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsxs)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.View, {
className: "address-card dashed-card",
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsxs)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.View, {
className: "address-header",
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsxs)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.View, {
className: "address-user",
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.Text, {
className: "address-name",
children: item.name
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.Text, {
className: "address-phone",
children: item.phone
}), item.isDefault && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.View, {
className: "default-tag",
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.Text, {
children: "\u9ED8\u8BA4"
})
})]
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsxs)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.Text, {
className: "address-full",
children: [item.region.join(' '), " ", item.detail]
})]
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsxs)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.View, {
className: "address-actions",
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.Text, {
className: "address-act",
onTap: function onTap() {
return openEdit(item);
},
children: "\u270F\uFE0F \u7F16\u8F91"
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.Text, {
className: "address-act",
onTap: function onTap() {
return handleCopy(item);
},
children: "\uD83D\uDCCB \u590D\u5236"
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.Text, {
className: "address-act delete",
onTap: function onTap() {
return handleDelete(item.id);
},
children: "\uD83D\uDDD1\uFE0F \u5220\u9664"
})]
})]
}, item.id);
}), list.length === 0 && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsxs)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.View, {
className: "empty-state",
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.Image, {
className: "empty-icon-img",
src: "/icon/\u5730\u5740.png",
mode: "aspectFit"
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.Text, {
className: "empty-text",
children: "\u8FD8\u6CA1\u6709\u6536\u8D27\u5730\u5740"
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.Text, {
className: "empty-sub",
children: "\u70B9\u51FB\u4E0B\u65B9\u6309\u94AE\u6DFB\u52A0\u65B0\u5730\u5740"
})]
})]
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.View, {
className: "safe-bottom-placeholder"
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.View, {
className: "action-bar",
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.View, {
className: "btn-gradient",
onTap: openAdd,
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.Text, {
children: "\u65B0\u589E\u6536\u8D27\u5730\u5740"
})
})
}), showForm && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.View, {
className: "modal-overlay",
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsxs)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.View, {
className: "modal-card dashed-card address-form",
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.View, {
className: "star-badge"
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.Text, {
className: "modal-title",
children: editing ? '编辑地址' : '新增地址'
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.Input, {
className: "form-input",
placeholder: "\u6536\u8D27\u4EBA\u59D3\u540D",
value: name,
onInput: function onInput(e) {
return setName(e.detail.value);
}
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.Input, {
className: "form-input",
placeholder: "\u624B\u673A\u53F7\u7801",
type: "number",
value: phone,
onInput: function onInput(e) {
return setPhone(e.detail.value);
}
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.Picker, {
mode: "region",
value: region,
onChange: onRegionChange,
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.View, {
className: "form-picker",
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.Text, {
className: region.length ? 'form-picker-val' : 'form-picker-ph',
children: region.length ? region.join(' / ') : '选择省 / 市 / 区'
})
})
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.Input, {
className: "form-input",
placeholder: "\u8BE6\u7EC6\u5730\u5740\uFF1A\u8857\u9053\u3001\u95E8\u724C\u53F7",
value: detail,
onInput: function onInput(e) {
return setDetail(e.detail.value);
}
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsxs)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.View, {
className: "form-row",
onTap: function onTap() {
return setIsDefault(!isDefault);
},
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.Text, {
className: "form-label",
children: "\u8BBE\u4E3A\u9ED8\u8BA4\u5730\u5740"
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.View, {
className: "checkbox ".concat(isDefault ? 'checked' : '')
})]
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsxs)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.View, {
className: "form-actions",
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.View, {
className: "btn-outline",
onTap: function onTap() {
setShowForm(false);
resetForm();
},
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.Text, {
children: "\u53D6\u6D88"
})
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.View, {
className: "btn-gradient",
onTap: handleSave,
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_7__.Text, {
children: "\u4FDD\u5B58"
})
})]
})]
})
})]
})
});
}
/***/ }),
/***/ "./src/pages/address/index.tsx":
/*!*************************************!*\
!*** ./src/pages/address/index.tsx ***!
\*************************************/
/***/ (function(__unused_webpack_module, __unused_webpack___webpack_exports__, __webpack_require__) {
/* harmony import */ var _tarojs_runtime__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @tarojs/runtime */ "./node_modules/@tarojs/runtime/dist/runtime.esm.js");
/* harmony import */ var _node_modules_tarojs_taro_loader_lib_entry_cache_js_name_pages_address_index_index_tsx__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !!../../../node_modules/@tarojs/taro-loader/lib/entry-cache.js?name=pages/address/index!./index.tsx */ "./node_modules/@tarojs/taro-loader/lib/entry-cache.js?name=pages/address/index!./src/pages/address/index.tsx");
var config = {"navigationBarTitleText":"收货地址"};
var inst = Page((0,_tarojs_runtime__WEBPACK_IMPORTED_MODULE_1__.createPageConfig)(_node_modules_tarojs_taro_loader_lib_entry_cache_js_name_pages_address_index_index_tsx__WEBPACK_IMPORTED_MODULE_0__["default"], 'pages/address/index', {root:{cn:[]}}, config || {}))
/* unused harmony default export */ var __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_tarojs_taro_loader_lib_entry_cache_js_name_pages_address_index_index_tsx__WEBPACK_IMPORTED_MODULE_0__["default"]);
/***/ })
},
/******/ function(__webpack_require__) { // webpackRuntimeModules
/******/ var __webpack_exec__ = function(moduleId) { return __webpack_require__(__webpack_require__.s = moduleId); }
/******/ __webpack_require__.O(0, ["taro","vendors","common"], function() { return __webpack_exec__("./src/pages/address/index.tsx"); });
/******/ var __webpack_exports__ = __webpack_require__.O();
/******/ }
]);
//# sourceMappingURL=index.js.map