Wait for the suspense boundary above the router to resolve before sending the first streaming chunk (#3891)
* Change the suspense streaming context after suspense is resolved in the router * Wait for the suspense context before streaming the first chunk in ssr * forward more response parts * warn * extract the hydration format into a crate * Fix hydration when no data is sent * forward web and server features * Fix suspense that starts on the client * fix use_server_future on the client * Add documentation for fullstack hooks and protocol * downgrade rust edition * fix clippy * fix tests * fix clippy * Fix pure web compile * undo changes to the fullstack router example * fix formatting
This commit is contained in:
1 parent
4f74ef81d1
commit
84221f55a0
45 files changed
+988
-533
No files matched your search
@@ -116,6 +116,15 @@ impl Runtime {
|
||||
result
|
||||
}
|
||||
|
||||
/// Run a closure with the rendering flag set to false
|
||||
pub(crate) fn while_not_rendering<T>(&self, f: impl FnOnce() -> T) -> T {
|
||||
let previous = self.rendering.get();
|
||||
self.rendering.set(false);
|
||||
let result = f();
|
||||
self.rendering.set(previous);
|
||||
result
|
||||
}
|
||||
|
||||
/// Create a scope context. This slab is synchronized with the scope slab.
|
||||
pub(crate) fn create_scope(&self, context: Scope) {
|
||||
let id = context.id;
|
||||
|
||||
Reference in new issue
Block a user