UNPKG

fastlion-amis

Version:

一种MIS页面生成工具

48 lines (47 loc) 1.77 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require("tslib"); var react_1 = (0, tslib_1.__importDefault)(require("react")); var markdown_1 = (0, tslib_1.__importDefault)(require("../utils/markdown")); var Markdown = /** @class */ (function (_super) { (0, tslib_1.__extends)(Markdown, _super); function Markdown(props) { var _this = _super.call(this, props) || this; _this.htmlRef = _this.htmlRef.bind(_this); return _this; } Markdown.prototype.htmlRef = function (dom) { this.dom = dom; if (!dom) { return; } this._render(); }; Markdown.prototype.componentDidUpdate = function (nextProps) { if (this.props.content !== nextProps.content) { this._render(); } }; Markdown.prototype._render = function () { return (0, tslib_1.__awaiter)(this, void 0, void 0, function () { var _a, content, options; return (0, tslib_1.__generator)(this, function (_b) { _a = this.props, content = _a.content, options = _a.options; this.dom.innerHTML = (0, markdown_1.default)(content, options); return [2 /*return*/]; }); }); }; Markdown.prototype.render = function () { return (react_1.default.createElement("div", { "data-testid": "markdown-body", className: "markdown-body", ref: this.htmlRef })); }; Markdown.defaultProps = { content: '', options: { linkify: true } }; return Markdown; }(react_1.default.Component)); exports.default = Markdown; //# sourceMappingURL=./components/Markdown.js.map