相关疑难解决方法(0)

是否可以将React组件传递给操纵p?

我有一个带有一些componentDidMount逻辑的React组件:

export default class MyComponent {
    componentDidMount() {
        // some changes to DOM done here by a library  
    }

    render() {
        return (
            <div>{props.data}</div>
        );
    }
}
Run Code Online (Sandbox Code Playgroud)

是否可以通过props传递此组件,以便componentDidMount()中的所有内容都被执行,以某种方式伪造以便截取屏幕截图?遵循以下原则:

const browser = await puppeteer.launch({ headless: true });
const page = await browser.newPage();

const html = ReactDOMServer.renderToString(<MyComponent data='' />); <-- but this skips the componentDidMount logic
await page.setContent(html);
await page.screenshot({ path: 'screenshot.png' });
Run Code Online (Sandbox Code Playgroud)

我知道我可以使用page.goto(),但是我有一些复杂的登录逻辑,我想使用这样的快捷方式来避免,而是将所有需要的道具直接传递给组件?

reactjs puppeteer

2
推荐指数
1
解决办法
2160
查看次数

标签 统计

puppeteer ×1

reactjs ×1