Dave Rolsky
81c094ed29
Fix handling of re-renders in the Router
...
Previously the router just stored a `root_found` boolean after it picked a
route. But on re-render it would just always return false from `should_render`
if this was true. This just aborted routing after a future resolved (or
anything else that triggered a re-render).
Now we store the matching ScopeId and check that against our routes in a
re-render so we actually do re-render the matching route.
2022-01-14 14:55:12 -06:00
Dave Rolsky
e06eac1ce5
More WIP router implementation
2022-01-13 12:26:49 -06:00
Dave Rolsky
c9408da731
Implement UseRoute segment method
...
This relies on the RouterService to capture path params when it does path
matching.
2022-01-13 12:21:06 -06:00
Dave Rolsky
f8a7e1cd82
Implement router matching for path parameters
...
We don't want to have the router just always match paths as exact strings. If
a path contains a parameter like "/thing/:id" then the ":id" portion of the
route should match _any_ string, not a literal ":id".
2022-01-13 12:21:06 -06:00
Dave Rolsky
3c6142fb9d
Commit WIP on router
...
There are a few different changes in here that probably need to be picked
apart. I'm sure much of this is wrong.
* Fix missing `dyn` that compiler complained about in router.rs
* Make UseRoute store a `Rc<RouterService>` rather than a string so we can get
information out of the router like current location.
* Implement `UseRoute`'s nth_segment and last_segment methods. I changed the
return type to a String because of the above.
* Remove some unused imports in platform/mod.rs and service.rs
* Implement the `use_route` fn. It panics if called outside a Router { } (I
think). I think that makes sense.
* Add a `current_location` method to `RouterService` that returns the current
location. I needed this both for the `UseRoute` implementation and _also_ so I
could get at this in my webapp code. I think having some way to get this will
be useful for others, whether or not this exact API is used. In my case, I
want to compare the current path to the `to` path of a `Link` so I can use a
different class for that `Link` if it is the currently active page.
2022-01-13 12:21:06 -06:00
Dave Rolsky
3a5b417ad1
Add more trace messages to the RouterService code
...
I was trying to debug some issues with my routes and this additional tracing
was quite helpful.
2022-01-13 12:21:06 -06:00
Dave Rolsky
d367e0f89f
Fix typo in RouterService struct's "registered_routes" field name
...
This was "registerd_routes", missing an "e".
2022-01-13 12:21:06 -06:00
Dave Rolsky
e22ba5b1e5
Add title prop to Link
...
Every element can have a title, but it's particularly useful on links, so I
think making it an explicit option is worthwhile.
2022-01-13 12:21:06 -06:00
Jonathan Kelley
6bd7e983c4
Update README.md
2022-01-13 11:25:18 -05:00
Jonathan Kelley
2736e649ca
Merge pull request #122 from mrxiaozhuox/master
...
Add `Chinese` Language `Readme` and add some info into README.md
2022-01-13 10:27:30 -05:00
YuKun Liu
75032da885
Update README.md
2022-01-13 22:30:18 +08:00
Jonathan Kelley
6e649d0401
Merge pull request #123 from mrxiaozhuox/patch-1
...
fix: edit `git-repository-url`
2022-01-13 09:25:29 -05:00
YuKun Liu
5d85eb6438
fix: edit git-repository-url
2022-01-13 18:16:55 +08:00
YuKun Liu
55b84fd9bd
docs: commit docs
2022-01-13 12:30:05 +08:00
YuKun Liu
aa15d00b1e
docs: add zh-cn
readme
2022-01-13 12:16:17 +08:00
Jonathan Kelley
6771ead13e
Merge pull request #118 from b12f/patch-1
2022-01-11 14:37:14 -05:00
Jonathan Kelley
8b75c811a2
Merge pull request #119 from yuniruyuni/docs/add-lifetime-for-children-example
2022-01-11 14:36:28 -05:00
yuniruyuni
388acf3277
docs: allow build core_reference/children example
...
It needs lifetime parameters.
2022-01-12 03:12:10 +09:00
Benjamin Bädorf
79c39c164d
Fix typo in docs
2022-01-11 17:43:23 +00:00
Jonathan Kelley
ca0dd4aa71
Merge pull request #95 from DioxusLabs/jk/filedragindrop
...
File Drag and Drop support
2022-01-10 23:19:36 -05:00
Jonathan Kelley
0369fe72fb
Merge pull request #111 from DioxusLabs/jk/props-attrs
...
Flatten optional prop attributes
2022-01-10 17:11:08 -05:00
Jonathan Kelley
6bc45b1c50
fix: clippy
2022-01-10 13:00:23 -05:00
Jonathan Kelley
bad36162af
fix: wry pathing
2022-01-10 12:57:43 -05:00
Jonathan Kelley
9ae981a1af
wip: drag and drop support
2022-01-10 12:57:39 -05:00
Jonathan Kelley
20a29409b2
Merge pull request #113 from DioxusLabs/jk/desktop-cursor-jump
...
fix: cursor jumping in desktop inputs
2022-01-10 12:20:13 -05:00
Jonathan Kelley
06205e425f
Merge pull request #112 from sassman/master
...
feat(example:todomvc): add editing support
2022-01-10 12:16:27 -05:00
Sven Assmann
007d06d602
feat(events:focus): add missing onfocusin
event
2022-01-10 18:08:29 +01:00
Jonathan Kelley
eb138848ec
feat: also hide placeholder node
2022-01-10 12:06:55 -05:00
Jonathan Kelley
be614e6535
fix: cursor jumping and use set instead of lsit
2022-01-10 12:04:54 -05:00
Sven Assmann
9849f68f25
feat(example:todomvc): add editing support
...
- implement "onfocusout" handler
- set autofocus
- handle enter, escape and tab on a todo item
- make the `<pre>` element between todo list items of margin 0 to be unnoticable
2022-01-10 14:46:23 +01:00
Jonathan Kelley
c8535fb184
fix: example bugged out
2022-01-10 03:05:49 -05:00
Jonathan Kelley
d2372717bd
feat: flatten props attrs
2022-01-10 02:57:03 -05:00
Jonathan Kelley
02d995e3f7
Merge pull request #109 from DioxusLabs/jk/ssr-bool-attrs
...
fix: ssr respects bool attrs
2022-01-10 02:37:46 -05:00
Jonathan Kelley
255f58af63
fix: ssr respects bool attrs
2022-01-10 01:32:32 -05:00
Jonathan Kelley
f4132d1874
Merge pull request #108 from DioxusLabs/jk/fstring-component-fields
...
Fix: string formatting detection in component fields
2022-01-10 01:20:58 -05:00
Jonathan Kelley
90abd9c9a0
fix: detection of f-string formatting in components
2022-01-10 01:20:03 -05:00
Jonathan Kelley
29bf424b09
Merge pull request #101 from alexkirsz/ci
...
CI: Enable clippy
2022-01-08 20:28:10 -05:00
Jonathan Kelley
5b882ac409
Merge pull request #103 from mrxiaozhuox/boolattrs-limit-type
...
Boolattrs limit type
2022-01-08 13:40:37 -05:00
YuKun Liu
92561612c7
fix: format code
2022-01-09 02:25:11 +08:00
Alexandre Kirszenberg
bc0d9ccab4
Remove duplicate libappindicator3
2022-01-08 19:05:11 +01:00
YuKun Liu
8f4aa84f1a
feat: bool attr white list
2022-01-09 02:02:23 +08:00
Jonathan Kelley
6c0cb99bbe
Merge pull request #102 from alexkirsz/ci-macos
...
CI: Test on macOS
2022-01-08 12:15:03 -05:00
Alexandre Kirszenberg
49986c89d7
Test on macOS
2022-01-08 17:21:00 +01:00
Alexandre Kirszenberg
b6903bf558
Enable clippy
2022-01-08 16:35:26 +01:00
Jonathan Kelley
4f1894ff5c
Merge pull request #100 from DioxusLabs/jk/release
...
Jk/release
2022-01-08 02:33:52 -05:00
Jonathan Kelley
b38f796aa3
Release dioxus v0.1.7
2022-01-08 02:32:29 -05:00
Jonathan Kelley
0d1a9eb460
release: add version for router
2022-01-08 02:32:26 -05:00
Jonathan Kelley
b804c691d5
Release dioxus-hooks v0.1.6, dioxus-mobile v0.0.3, dioxus-router v0.1.0, dioxus-ssr v0.1.2, dioxus-web v0.0.4, dioxus v0.1.7
2022-01-08 02:30:37 -05:00
Jonathan Kelley
cd0dcacaf2
Release dioxus-desktop v0.1.5
2022-01-08 02:30:03 -05:00
Jonathan Kelley
a36dab7f45
Release dioxus-html v0.1.4, dioxus-desktop v0.1.5, dioxus-hooks v0.1.6, dioxus-mobile v0.0.3, dioxus-router v0.1.0, dioxus-ssr v0.1.2, dioxus-web v0.0.4, dioxus v0.1.7
2022-01-08 02:28:25 -05:00