V16 is still widely used today so we don't need to rush this yet, but 18 improves the rendering experience a lot with batching, prioritization and concurrency as well as providing new Hooks and APIs. Plus, the usual security updates, reduced tech debt and nicer versions of many libraries.
It's been out for quite a while now, so it's quite safe to upgrade but we should probably gradually go from 17 (intended as a stepping stone release) to 18. DvaJS should also be potentially fine here https://github.com/dvajs/dva/pull/2515 (translated), looks like they just recently released support for React 18.
V16 is still widely used today so we don't need to rush this yet, but 18 improves the rendering experience a lot with batching, prioritization and concurrency as well as providing new Hooks and APIs. Plus, the usual security updates, reduced tech debt and nicer versions of many libraries.
It's been out for quite a while now, so it's quite safe to upgrade but we should probably gradually go from 17 (intended as a stepping stone release) to 18. DvaJS should also be potentially fine here https://github.com/dvajs/dva/pull/2515 (translated), looks like they just recently released support for React 18.
In terms of testing, react testing library can bump up to v14 from v12 (https://www.npmjs.com/package/@testing-library/react?activeTab=versions), and most of our current test harness should work fine from there.