瀏覽代碼

fix all broken examples (#1248)

ealmloff 1 年之前
父節點
當前提交
d637ef187c

+ 2 - 1
examples/hydration.rs

@@ -13,7 +13,8 @@ use dioxus::prelude::*;
 use dioxus_desktop::Config;
 
 fn main() {
-    let vdom = VirtualDom::new(app);
+    let mut vdom = VirtualDom::new(app);
+    let _ = vdom.rebuild();
     let content = dioxus_ssr::pre_render(&vdom);
 
     dioxus_desktop::launch_cfg(app, Config::new().with_prerendered(content));

+ 1 - 1
examples/read_size.rs

@@ -48,7 +48,7 @@ fn app(cx: Scope) -> Element {
                     let read = div_element.read();
                     let client_rect = read.as_ref().map(|el| el.get_client_rect());
                     if let Some(client_rect) = client_rect {
-                        if let Ok(rect) = client_rect.await {
+                        if let Ok(rect) = dbg!(client_rect.await) {
                             dimentions.set(rect);
                         }
                     }

+ 1 - 1
examples/suspense.rs

@@ -10,7 +10,7 @@
 //! will cause it to fetch a random dog image from the Dog API. Since the data
 //! is not ready immediately, we render some loading text.
 //!
-//! We can achieve the majoirty of suspense functionality by composing "suspenseful"
+//! We can achieve the majority of suspense functionality by composing "suspenseful"
 //! primitives in our own custom components.
 
 use dioxus::prelude::*;

+ 2 - 4
packages/desktop/src/query.rs

@@ -168,10 +168,8 @@ pub(crate) struct Query<V: DeserializeOwned> {
 impl<V: DeserializeOwned> Query<V> {
     /// Resolve the query
     pub async fn resolve(mut self) -> Result<V, QueryError> {
-        match self.receiver.recv().await {
-            Some(result) => V::deserialize(result).map_err(QueryError::Deserialize),
-            None => Err(QueryError::Recv(RecvError::Closed)),
-        }
+        let result = self.result().await?;
+        V::deserialize(result).map_err(QueryError::Deserialize)
     }
 
     /// Send a message to the query

+ 1 - 1
packages/fullstack/examples/axum-desktop/src/client.rs

@@ -8,6 +8,6 @@ use dioxus_fullstack::prelude::server_fn::set_server_url;
 
 fn main() {
     // Set the url of the server where server functions are hosted.
-    set_server_url("http://127.0.0.0:8080");
+    set_server_url("http://127.0.0.1:8080");
     dioxus_desktop::launch(app)
 }

+ 5 - 0
packages/fullstack/examples/axum-desktop/src/server.rs

@@ -3,11 +3,16 @@
 // cargo run --bin server --features ssr
 // ```
 
+use axum_desktop::*;
 use dioxus_fullstack::prelude::*;
 
 #[tokio::main]
 async fn main() {
     let addr = std::net::SocketAddr::from(([127, 0, 0, 1], 8080));
+
+    PostServerData::register_explicit();
+    GetServerData::register_explicit();
+
     axum::Server::bind(&addr)
         .serve(
             axum::Router::new()

+ 2 - 2
packages/fullstack/examples/axum-hello-world/src/main.rs

@@ -1,8 +1,8 @@
 //! Run with:
 //!
 //! ```sh
-//! dx build --features web
-//! cargo run --features ssr
+//! dx build --features web --release
+//! cargo run --features ssr --release
 //! ```
 
 #![allow(non_snake_case, unused)]

+ 2 - 2
packages/fullstack/examples/axum-router/src/main.rs

@@ -1,8 +1,8 @@
 //! Run with:
 //!
 //! ```sh
-//! dx build --features web
-//! cargo run --features ssr
+//! dx build --features web --release
+//! cargo run --features ssr --release
 //! ```
 
 #![allow(non_snake_case)]

+ 2 - 2
packages/fullstack/examples/salvo-hello-world/src/main.rs

@@ -1,8 +1,8 @@
 //! Run with:
 //!
 //! ```sh
-//! dx build --features web
-//! cargo run --features ssr
+//! dx build --features web --release
+//! cargo run --features ssr --release
 //! ```
 
 #![allow(non_snake_case, unused)]

+ 1 - 1
packages/fullstack/examples/static-hydrated/src/main.rs

@@ -1,7 +1,7 @@
 //! Run with:
 //!
 //! ```sh
-//! dx build --features web
+//! dx build --features web --release
 //! cargo run --features ssr
 //! ```
 

+ 2 - 2
packages/fullstack/examples/warp-hello-world/src/main.rs

@@ -1,8 +1,8 @@
 //! Run with:
 //!
 //! ```sh
-//! dx build --features web
-//! cargo run --features ssr
+//! dx build --features web --release
+//! cargo run --features ssr --release
 //! ```
 
 #![allow(non_snake_case, unused)]

+ 8 - 8
packages/rink/src/lib.rs

@@ -131,18 +131,18 @@ pub fn render<R: Driver>(
         rdom.raw_world_mut().add_unique(query_engine);
     }
 
-    {
-        renderer.update(&rdom);
-        let mut any_map = SendAnyMap::new();
-        any_map.insert(taffy.clone());
-        let mut rdom = rdom.write().unwrap();
-        let _ = rdom.update_state(any_map);
-    }
-
     tokio::runtime::Builder::new_current_thread()
         .enable_all()
         .build()?
         .block_on(async {
+            {
+                renderer.update(&rdom);
+                let mut any_map = SendAnyMap::new();
+                any_map.insert(taffy.clone());
+                let mut rdom = rdom.write().unwrap();
+                let _ = rdom.update_state(any_map);
+            }
+
             let mut terminal = (!cfg.headless).then(|| {
                 enable_raw_mode().unwrap();
                 let mut stdout = std::io::stdout();