Спасибо за терпение! Теперь я понимаю, что я пытался избежать Webpack, но я думаю, что это путь, спасибо еще раз!
я есть компонент React с некоторой логикой componentDidMount:
export default class MyComponent {
componentDidMount() {
// some changes to DOM done here by a library
}
render() {
return (
<div>{props,.data}</div>
);
}
}
Можно ли передать этот компонент с помощью реквизита, чтобы все в 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' });
Я знаю, что мог бы использоватьpage.goto()
, но у меня есть некоторая сложная логика входа в систему, которую я хотел бы избежать с помощью ярлыка, как это, и вместо этого передать все необходимые реквизиты только непосредственно к компоненту?