我想将 Grommet 导出TextArea
为图像。如果只有一行文本,则以下代码有效。但是,如果我调整TextArea
组件以使文本填充多行,则不会在输出图像中导出。
这是它的外观(1 - 是包含TextArea
我要导出的多行的页面,2 - 导出TextArea
的,仅包含一行文本)
好像我只是错过了一些关于 HTML 画布的东西。或者,也许 GrommetTextArea
中有一些属性有助于改变这种行为?
应用程序.js:
import React, { Component } from "react";
import { TextArea } from "grommet";
import "./styles.css";
import { exportComponentAsPNG } from "react-component-export-image";
export default class App extends Component {
constructor(props) {
super(props);
this.textRef = React.createRef();
this.state = { text: "" };
}
render() {
const { text } = this.state;
return (
<div className="App">
<TextArea
ref={this.textRef}
value={text}
onChange={(event) => this.setState({ text: event.target.value })}
/>
<button onClick={() => exportComponentAsPNG(this.textRef)}>
Click
</button>
</div>
);
}
}
index.js:
import ReactDOM from "react-dom";
import App from "./App";
const rootElement = document.getElementById("root");
ReactDOM.render(<App />, rootElement);
索引.html:
<div id="root"></div>