目前,我正在 componentDidMount 上手动初始化 Quill 编辑器,而 jest 测试对我来说失败了。看起来我得到的 ref 值在 jsdom 中为空。这里有问题:https : //github.com/facebook/react/issues/7371但看起来 refs 应该可以工作。任何想法我应该检查什么?
零件:
import React, { Component } from 'react';
import logo from './logo.svg';
import './App.css';
class App extends Component {
componentDidMount() {
console.log(this._p)
}
render() {
return (
<div className="App">
<div className="App-header">
<img src={logo} className="App-logo" alt="logo" />
<h2>Welcome to React</h2>
</div>
<p className="App-intro" ref={(c) => { this._p = c }}>
To get started, edit <code>src/App.js</code> and save to reload.
</p>
</div>
);
}
}
测试:
import React from 'react';
import ReactDOM from 'react-dom';
import App from './App';
import renderer from 'react-test-renderer'
it('snapshot testing', () => {
const tree = renderer.create(
<App />
).toJSON()
expect(tree).toMatchSnapshot()
})
结果,console.log 输出空值。但我希望 P 标签