- Feat: 🚀 support suspense SSR #5801
// New API from ice for Suspense SSR
import { useSuspenseData, withSuspense } from 'ice';
function Comments() {
const comments = useSuspenseData(getData);
return (
<div>
{comments.map((comment, i) => (
<p className="comment" key={i}>
{comment}
</p>
))}
</div>
);
}
export default withSuspense(Comments);
const fakeData = [
"Wait, it doesn't wait for React to load?",
'How does this even work?',
'I like marshmallows',
];
async function getData() {
await new Promise((resolve) => {
setTimeout(() => resolve(null), 3000);
});
return fakeData;
}
- Feat: mark ice.js works properly with weex2.0 and support js entry #5615 #5728 #5763
- Feat: support dynamic dataLoader for PHA #5808
- Refactor: support keep platform code by alias to runtime generation #5710
- Fix: build error with use dynamic import #5840
- Fix: render duplicate element when use
rax compat mode
#5847 - Fix: compatible with document with has not meta element #5816
- Fix: support lifecycle of bootstrap when use
@ice/plugin-icestark
#5825 - Fix: set the right target for build
data-loader.js
#5843 - Fix: process exit when error occur in development #5827