UNPKG

@ant-design/pro-utils

Version:
64 lines (63 loc) 2.54 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; Object.defineProperty(exports, "__esModule", { value: true }); exports.ErrorBoundary = void 0; var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized")); var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper")); var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); var _antd = require("antd"); var _react = _interopRequireDefault(require("react")); var _jsxRuntime = require("react/jsx-runtime"); // eslint-disable-next-line @typescript-eslint/ban-types var ErrorBoundary = exports.ErrorBoundary = /*#__PURE__*/function (_React$Component) { (0, _inherits2.default)(ErrorBoundary, _React$Component); var _super = (0, _createSuper2.default)(ErrorBoundary); function ErrorBoundary() { var _this; (0, _classCallCheck2.default)(this, ErrorBoundary); for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { args[_key] = arguments[_key]; } _this = _super.call.apply(_super, [this].concat(args)); (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "state", { hasError: false, errorInfo: '' }); return _this; } (0, _createClass2.default)(ErrorBoundary, [{ key: "componentDidCatch", value: function componentDidCatch(error, errorInfo) { // You can also log the error to an error reporting service // eslint-disable-next-line no-console console.log(error, errorInfo); } }, { key: "render", value: function render() { if (this.state.hasError) { // You can render any custom fallback UI return /*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.Result, { status: "error", title: "Something went wrong.", extra: this.state.errorInfo }); } return this.props.children; } }], [{ key: "getDerivedStateFromError", value: function getDerivedStateFromError(error) { return { hasError: true, errorInfo: error.message }; } }]); return ErrorBoundary; }(_react.default.Component);