UNPKG

fastlion-amis

Version:

一种MIS页面生成工具

31 lines (30 loc) 1.39 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require("tslib"); // 错误边界 var react_1 = (0, tslib_1.__importDefault)(require("react")); var ErrorBoundary = /** @class */ (function (_super) { (0, tslib_1.__extends)(ErrorBoundary, _super); function ErrorBoundary(props) { var _this = _super.call(this, props) || this; _this.state = { hasError: false }; return _this; } // 此生命周期会在后代组件抛出错误后被调用。 它将抛出的错误作为参数,并返回一个值以更新 state ErrorBoundary.getDerivedStateFromError = function (error) { console.error(error); // 更新 state 使下一次渲染能够显示降级后的 UI return { hasError: true }; }; ErrorBoundary.prototype.render = function () { var _a; if (this.state.hasError) { // 你可以自定义降级后的 UI 并渲染 return react_1.default.createElement("h1", null, (_a = this.props.errorText) !== null && _a !== void 0 ? _a : '组件错误'); } return (react_1.default.createElement(react_1.default.Fragment, null, this.props.children)); }; return ErrorBoundary; }(react_1.default.PureComponent)); exports.default = ErrorBoundary; //# sourceMappingURL=./components/ErrorBound.js.map