Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
修复微模块的 targetNode 为 null 的问题
现象:微模块的 mount API 无法获取 targetNode
![image](https://private-user-images.githubusercontent.com/13255714/313615947-b7edcd65-dc8d-41e4-99fa-eaf26a9df502.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzg3NDc3NTYsIm5iZiI6MTczODc0NzQ1NiwicGF0aCI6Ii8xMzI1NTcxNC8zMTM2MTU5NDctYjdlZGNkNjUtZGM4ZC00MWU0LTk5ZmEtZWFmMjZhOWRmNTAyLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMDUlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjA1VDA5MjQxNlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPThjMjMxOTFkYTY2NzYyN2UzODk0NmYzNjBlODUyM2U5ZGQxZWZlMWMwMjJmMjA3ZGJlYThlMzhjMjdjNmVhZjImWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.DTzoUnJEkFTWHkViLp5gWeAYcM-zJTin-byuC3p3Rds)
![image](https://private-user-images.githubusercontent.com/13255714/313615964-510306e1-ec95-46a3-b7ff-5a353b340477.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzg3NDc3NTYsIm5iZiI6MTczODc0NzQ1NiwicGF0aCI6Ii8xMzI1NTcxNC8zMTM2MTU5NjQtNTEwMzA2ZTEtZWM5NS00NmEzLWI3ZmYtNWEzNTNiMzQwNDc3LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMDUlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjA1VDA5MjQxNlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTAyZDY5Y2JlZDNjYjk2NjdmNzZmZmJiODFhZDQ2ZmU4YmZhMmFhMDk4ZTQwMTExMGM1OTFhOTgyYmE4YWJhZGYmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.CPzuqWRTXp89Y6Pkh2dvbRBJKIxbRv30DCMBS11w9cQ)
原因定位:通过日志方式呈现,最终定位原因为 setState 后的执行时序问题
最终执行时序
![image](https://private-user-images.githubusercontent.com/13255714/313616037-33c4fe4a-e9b4-4340-854c-41eec445556a.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzg3NDc3NTYsIm5iZiI6MTczODc0NzQ1NiwicGF0aCI6Ii8xMzI1NTcxNC8zMTM2MTYwMzctMzNjNGZlNGEtZTliNC00MzQwLTg1NGMtNDFlZWM0NDU1NTZhLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMDUlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjA1VDA5MjQxNlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWRhODQxNTIzM2I3Y2RiYWIyYWZiZWU3NTIwMmYwYjA2NjE3YmM1MGU4MzljZDNmZjRmYzIyNjllZWNiY2NhMjcmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.KFudDCa_5Y2ki49rnfj0HQq5lIPqCFOph6pAa8NpU2w)
修复方式:通过将后续的 mount 逻辑放到 setState 回调,保证此时 this.mountNode 是成功赋值的状态
![image](https://private-user-images.githubusercontent.com/13255714/313616519-d295fd08-4855-4bb3-8bf0-5d653b1ed9ea.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzg3NDc3NTYsIm5iZiI6MTczODc0NzQ1NiwicGF0aCI6Ii8xMzI1NTcxNC8zMTM2MTY1MTktZDI5NWZkMDgtNDg1NS00YmIzLThiZjAtNWQ2NTNiMWVkOWVhLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMDUlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjA1VDA5MjQxNlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWQ5MzVjNWFjNDRiODBjMmJkNjA0ZDFhN2NhMzk2ODlhNzdmNjFiY2U0NmIzNDhlYzIyY2YzM2NjNmI3MWYxMzQmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.6xT6D5yDMmsdujo-nzzd5FmFMO7WiOd32yezXYGPU1c)
最终执行时序正常,问题修复
![image](https://private-user-images.githubusercontent.com/13255714/313616576-8c1aa55e-3030-452f-98a6-f16104c21d8e.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzg3NDc3NTYsIm5iZiI6MTczODc0NzQ1NiwicGF0aCI6Ii8xMzI1NTcxNC8zMTM2MTY1NzYtOGMxYWE1NWUtMzAzMC00NTJmLTk4YTYtZjE2MTA0YzIxZDhlLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMDUlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjA1VDA5MjQxNlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTlhOTI1NmE4MGVjYmU4YjVlOTNjNTdkYTUwMzg5YWQ0N2I1MWJjODNiZTFjMzFmMzkwMDkzMzk4NjJiYzFlYTEmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.upAoqEhqV2qgsdjIr3SqlC1XsykWV15msTabWlzZFXs)