Skip to content

Commit 0bf7ad2

Browse files
committed
Fixed a bug in routing with search terms
1 parent 48db336 commit 0bf7ad2

File tree

13 files changed

+32
-46
lines changed

13 files changed

+32
-46
lines changed

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "seed"
3-
version = "0.2.6"
3+
version = "0.2.7"
44
description = "A Rust framework for creating web apps, using WebAssembly"
55
authors = ["DavidOConnor <[email protected]>"]
66
license = "MIT"

examples/counter/src/lib.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,7 @@ fn view(_state: seed::App<Msg, Model>, model: &Model) -> El<Msg> {
123123

124124
#[wasm_bindgen]
125125
pub fn render() {
126-
let app_builder = seed::App::build(Model::default(), update, view);
127-
128-
app_builder.clone().finish().run();
126+
seed::App::build(Model::default(), update, view)
127+
.finish()
128+
.run();
129129
}

examples/server_integration/frontend/src/lib.rs

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -9,22 +9,11 @@ use shared::Data;
99

1010
// Model
1111

12-
#[derive(Clone)]
12+
#[derive(Clone, Default)]
1313
struct Model {
1414
pub data: Data,
1515
}
1616

17-
impl Default for Model {
18-
fn default() -> Self {
19-
Self {
20-
data: Data {
21-
val: 0,
22-
text: "".into(),
23-
},
24-
}
25-
}
26-
}
27-
2817
fn get_data(state: seed::App<Msg, Model>) -> impl Future<Item = (), Error = JsValue> {
2918
let url = "http://localhost:8001/data";
3019

examples/server_interaction/src/lib.rs

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -80,8 +80,8 @@ impl Default for Model {
8080
fn default() -> Self {
8181
Self {
8282
data: Branch {
83-
name: "Test".into(),
84-
commit: Commit { sha: "123".into() },
83+
name: "Loading...".into(),
84+
commit: Commit { sha: "Loading...".into() },
8585
},
8686
}
8787
}
@@ -121,7 +121,9 @@ fn view(state: seed::App<Msg, Model>, model: &Model) -> El<Msg> {
121121
"Repo info: name: {}, sha: {}",
122122
model.data.name, model.data.commit.sha
123123
),
124-
did_mount(move |_| spawn_local(get_data(state.clone())))
124+
125+
// Another approach that would work for initial loading:
126+
// did_mount(move |_| spawn_local(get_data(state.clone())))
125127
],
126128
button![
127129
raw_ev(Ev::Click, move |_| Msg::Send),
@@ -132,8 +134,10 @@ fn view(state: seed::App<Msg, Model>, model: &Model) -> El<Msg> {
132134

133135
#[wasm_bindgen]
134136
pub fn render() {
135-
seed::App::build(Model::default(), update, view)
137+
let state = seed::App::build(Model::default(), update, view)
136138
.mount("main")
137139
.finish()
138140
.run();
141+
142+
spawn_local(get_data(state));
139143
}

examples/websocket/README.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
## Communicating with a server using WebSocket
2+
3+
Inlcludes an example Rust server (not related to Seed), and client. Both share datastructures
4+
in `json.rs`. To run, run `cargo run` in one terminal, and `python serve.py` in another.
5+
6+
Written by Flosse.

examples/websocket/build.ps1

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
mkdir -p pkg
21
cargo build --lib --target wasm32-unknown-unknown --no-default-features
32
wasm-bindgen ../../target/wasm32-unknown-unknown/debug/websocket.wasm --no-modules --out-dir ./pkg
43
cargo build --bin server --features server

examples/websocket/build.sh

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
#!/usr/bin/env bash
2-
mkdir -p pkg
32
cargo build --lib --target wasm32-unknown-unknown --no-default-features
43
wasm-bindgen ../../target/wasm32-unknown-unknown/debug/websocket.wasm --no-modules --out-dir ./pkg
54
cargo build --bin server --features server

examples/websocket/src/client.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -110,12 +110,12 @@ fn open_ws(state: App<Msg, Model>) {
110110

111111
let s = state.clone();
112112
let on_open = Closure::wrap(Box::new(move |_| {
113-
log_1(&"WebSocket connection is open now".into());
113+
log!("WebSocket connection is open now");
114114
s.update(Msg::Connected);
115115
}) as Box<FnMut(JsValue)>);
116116

117117
let on_close = Closure::wrap(Box::new(|_| {
118-
log_1(&"WebSocket connection was closed".into());
118+
log!("WebSocket connection was closed");
119119
}) as Box<FnMut(JsValue)>);
120120

121121
let s = state.clone();
@@ -152,7 +152,7 @@ fn open_ws(state: App<Msg, Model>) {
152152

153153
#[wasm_bindgen]
154154
pub fn start() {
155-
log_1(&"start the websocket client app".into());
155+
log!("start the websocket client app");
156156
let app = App::build(Model::default(), update, view).finish().run();
157157
open_ws(app);
158158
}

examples/window_events/src/lib.rs

Lines changed: 5 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,11 @@
22
33
#[macro_use]
44
extern crate seed;
5-
use seed::prelude::*;
5+
use seed::{prelude::*, dom_types::Listener};
66

77
// Model
88

9-
#[derive(Clone)]
9+
#[derive(Clone, Default)]
1010
struct Model {
1111
watching: bool,
1212
coords: (i32, i32),
@@ -19,16 +19,6 @@ impl Model {
1919
}
2020
}
2121

22-
impl Default for Model {
23-
fn default() -> Self {
24-
Self {
25-
watching: false,
26-
coords: (0, 0),
27-
last_keycode: 0,
28-
}
29-
}
30-
}
31-
3222
// Update
3323

3424
#[derive(Clone)]
@@ -92,11 +82,11 @@ fn view(_state: seed::App<Msg, Model>, model: &Model) -> El<Msg> {
9282
]
9383
}
9484

95-
fn window_events(model: Model) -> Vec<seed::Listener<Msg>> {
85+
fn window_events(model: &Model) -> Vec<Listener<Msg>> {
9686
let mut result = Vec::new();
9787
if model.watching {
98-
result.push(mouse_ev(Ev::MouseMove, |ev| Msg::UpdateCoords(ev)));
99-
result.push(keyboard_ev(Ev::KeyDown, |ev| Msg::KeyPressed(ev)));
88+
result.push(mouse_ev(Ev::MouseMove, Msg::UpdateCoords));
89+
result.push(keyboard_ev(Ev::KeyDown, Msg::KeyPressed));
10090
}
10191
result
10292
}

src/lib.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -133,11 +133,11 @@ pub mod tests {
133133
div!["Hello world"]
134134
}
135135

136-
fn window_events(model: Model) -> Vec<seed::dom_types::Listener<Msg>> {
136+
fn window_events(model: &Model) -> Vec<seed::dom_types::Listener<Msg>> {
137137
vec![mouse_ev("mousemove", |_| Msg::Increment)]
138138
}
139139

140-
fn routes(url: seed::Url) -> Msg {
140+
fn routes(url: &seed::Url) -> Msg {
141141
Msg::Increment
142142
}
143143

0 commit comments

Comments
 (0)