@yandex/ui
Version:
Yandex UI components
27 lines (26 loc) • 1.51 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.Rerender = void 0;
var tslib_1 = require("tslib");
var react_1 = tslib_1.__importStar(require("react"));
var usePreviousValue_1 = require("@yandex-lego/components/usePreviousValue");
var desktop_1 = require("@yandex-lego/components/Button/Button.bundle/desktop");
var useForceUpdate = function () {
var _a = tslib_1.__read(react_1.useState(0), 2), setValue = _a[1];
return function () { return setValue(function (value) { return ++value; }); };
};
var Rerender = function () {
var _a = tslib_1.__read(react_1.useState(0), 2), count = _a[0], setCount = _a[1];
var prevCount = usePreviousValue_1.usePreviousValue(count);
var forceUpdate = useForceUpdate();
return (react_1.default.createElement(react_1.default.Fragment, null,
"\u0422\u0435\u043A\u0443\u0449\u0435\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435: ",
count,
". \u00A0 \u041F\u0440\u0435\u0434\u044B\u0434\u0443\u0449\u0435\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435: ",
prevCount,
". \u00A0",
react_1.default.createElement(desktop_1.Button, { view: "action", size: "m", onClick: function () { return setCount(function (prev) { return prev + 1; }); } }, "+"),
" \u00A0",
react_1.default.createElement(desktop_1.Button, { view: "action", size: "m", onClick: forceUpdate }, "\u0420\u0435\u0440\u0435\u043D\u0434\u0435\u0440")));
};
exports.Rerender = Rerender;