소스 검색

docs: create a new "advanced" book

Jonathan Kelley 3 년 전
부모
커밋
97a2c62804
69개의 변경된 파일24개의 추가작업 그리고 9개의 파일을 삭제
  1. 0 0
      docs/guide/book.toml
  2. 1 1
      docs/guide/src/README.md
  3. 3 2
      docs/guide/src/SUMMARY.md
  4. 0 0
      docs/guide/src/advanced-guides/custom-renderer.md
  5. 0 0
      docs/guide/src/advanced-guides/liveview.md
  6. 0 0
      docs/guide/src/advanced-guides/rsx-in-depth.md
  7. 0 0
      docs/guide/src/concepts/00-index.md
  8. 0 0
      docs/guide/src/concepts/06-subscription-api.md
  9. 0 0
      docs/guide/src/concepts/10-concurrent-mode.md
  10. 0 0
      docs/guide/src/concepts/11-arena-memo.md
  11. 0 0
      docs/guide/src/concepts/12-signals.md
  12. 0 0
      docs/guide/src/concepts/13-subtrees.md
  13. 0 0
      docs/guide/src/concepts/async.md
  14. 0 0
      docs/guide/src/concepts/asynccallbacks.md
  15. 0 0
      docs/guide/src/concepts/asynctasks.md
  16. 0 0
      docs/guide/src/concepts/bundline.md
  17. 0 0
      docs/guide/src/concepts/components.md
  18. 0 0
      docs/guide/src/concepts/conditional_rendering.md
  19. 0 0
      docs/guide/src/concepts/custom_elements.md
  20. 0 0
      docs/guide/src/concepts/custom_renderer.md
  21. 0 0
      docs/guide/src/concepts/effects.md
  22. 0 0
      docs/guide/src/concepts/errorhandling.md
  23. 0 0
      docs/guide/src/concepts/event_handlers.md
  24. 0 0
      docs/guide/src/concepts/exporting_components.md
  25. 0 0
      docs/guide/src/concepts/hooks.md
  26. 0 0
      docs/guide/src/concepts/interactivity.md
  27. 0 0
      docs/guide/src/concepts/lifecycles.md
  28. 9 2
      docs/guide/src/concepts/lists.md
  29. 0 0
      docs/guide/src/concepts/managing_state.md
  30. 0 0
      docs/guide/src/concepts/memoization.md
  31. 0 0
      docs/guide/src/concepts/rsx.md
  32. 0 0
      docs/guide/src/concepts/rsx_in_depth.md
  33. 0 0
      docs/guide/src/concepts/server_side_components.md
  34. 0 0
      docs/guide/src/concepts/sharedstate.md
  35. 0 0
      docs/guide/src/concepts/suspense.md
  36. 0 0
      docs/guide/src/concepts/testing.md
  37. 0 0
      docs/guide/src/concepts/vnodes.md
  38. 10 0
      docs/guide/src/final/index.md
  39. 0 0
      docs/guide/src/hello_world.md
  40. 0 0
      docs/guide/src/images/01-setup-helloworld.png
  41. 0 0
      docs/guide/src/images/compiletimecorrect.png
  42. 0 0
      docs/guide/src/images/dioxuslogo_full.png
  43. 0 0
      docs/guide/src/images/helloworld.png
  44. 0 0
      docs/guide/src/images/reddit.png
  45. 0 0
      docs/guide/src/images/reddit_post.png
  46. 0 0
      docs/guide/src/images/reddit_post_components.png
  47. 0 0
      docs/guide/src/misc/contributors.md
  48. 1 1
      docs/guide/src/setup.md
  49. 0 0
      docs/guide/src/tutorial/advanced_guides.md
  50. 0 0
      docs/guide/src/tutorial/components.md
  51. 0 0
      docs/guide/src/tutorial/index.md
  52. 0 0
      docs/guide/src/tutorial/new_app.md
  53. 0 0
      docs/guide/src/tutorial/publishing.md
  54. 0 0
      docs/guide/src/tutorial/state.md
  55. 0 0
      docs/guide/src/tutorial/structure.md
  56. 0 0
      docs/guide/src/tutorial/styling.md
  57. 0 0
      docs/reference/README.md
  58. 0 0
      docs/reference/SUMMARY.md
  59. 0 0
      docs/reference/book.toml
  60. 0 0
      docs/reference/src/depth/components.md
  61. 0 0
      docs/reference/src/depth/memoization.md
  62. 0 0
      docs/reference/src/depth/performance.md
  63. 0 0
      docs/reference/src/depth/props.md
  64. 0 0
      docs/reference/src/depth/rsx.md
  65. 0 0
      docs/reference/src/depth/testing.md
  66. 0 0
      docs/reference/src/depth/topics.md
  67. 0 1
      docs/src/for_developers/README.md
  68. 0 1
      docs/src/for_developers/backends.md
  69. 0 1
      docs/src/for_developers/preprocessors.md

+ 0 - 0
docs/book.toml → docs/guide/book.toml


+ 1 - 1
docs/src/README.md → docs/guide/src/README.md

@@ -33,7 +33,7 @@ Examples:
 - [ECommerce]()
 - [Photo Editor]()
 
-[![todomvc](https://github.com/DioxusLabs/todomvc/raw/master/example.png)](https://github.com/dioxusLabs/todomvc/)
+[![TODOMVC](https://github.com/DioxusLabs/todomvc/raw/master/example.png)](https://github.com/dioxusLabs/todomvc/)
 
 ### SSR Support
 ---

+ 3 - 2
docs/src/SUMMARY.md → docs/guide/src/SUMMARY.md

@@ -29,7 +29,8 @@
   - [Defining Components](tutorial/components.md)
   - [Styling](tutorial/styling.md)
   - [Publishing](tutorial/publishing.md)
-- [Topics in Depth](depth/topics.md)
+- [Next Steps and Advanced Topics](final/index.md)
+<!-- - [Topics in Depth](depth/topics.md)
   - [RSX](depth/rsx.md)
   - [Components](depth/components.md)
   - [Props](depth/props.md)
@@ -73,7 +74,7 @@
   - [State Management]()
   - [Suspense]()
   - [task]()
-  - [Testing]()
+  - [Testing]() -->
 
 -----------
 

+ 0 - 0
docs/src/advanced-guides/custom-renderer.md → docs/guide/src/advanced-guides/custom-renderer.md


+ 0 - 0
docs/src/advanced-guides/liveview.md → docs/guide/src/advanced-guides/liveview.md


+ 0 - 0
docs/src/advanced-guides/rsx-in-depth.md → docs/guide/src/advanced-guides/rsx-in-depth.md


+ 0 - 0
docs/src/concepts/00-index.md → docs/guide/src/concepts/00-index.md


+ 0 - 0
docs/src/concepts/06-subscription-api.md → docs/guide/src/concepts/06-subscription-api.md


+ 0 - 0
docs/src/concepts/10-concurrent-mode.md → docs/guide/src/concepts/10-concurrent-mode.md


+ 0 - 0
docs/src/concepts/11-arena-memo.md → docs/guide/src/concepts/11-arena-memo.md


+ 0 - 0
docs/src/concepts/12-signals.md → docs/guide/src/concepts/12-signals.md


+ 0 - 0
docs/src/concepts/13-subtrees.md → docs/guide/src/concepts/13-subtrees.md


+ 0 - 0
docs/src/concepts/async.md → docs/guide/src/concepts/async.md


+ 0 - 0
docs/src/concepts/asynccallbacks.md → docs/guide/src/concepts/asynccallbacks.md


+ 0 - 0
docs/src/concepts/asynctasks.md → docs/guide/src/concepts/asynctasks.md


+ 0 - 0
docs/src/concepts/bundline.md → docs/guide/src/concepts/bundline.md


+ 0 - 0
docs/src/concepts/components.md → docs/guide/src/concepts/components.md


+ 0 - 0
docs/src/concepts/conditional_rendering.md → docs/guide/src/concepts/conditional_rendering.md


+ 0 - 0
docs/src/concepts/custom_elements.md → docs/guide/src/concepts/custom_elements.md


+ 0 - 0
docs/src/concepts/custom_renderer.md → docs/guide/src/concepts/custom_renderer.md


+ 0 - 0
docs/src/concepts/effects.md → docs/guide/src/concepts/effects.md


+ 0 - 0
docs/src/concepts/errorhandling.md → docs/guide/src/concepts/errorhandling.md


+ 0 - 0
docs/src/concepts/event_handlers.md → docs/guide/src/concepts/event_handlers.md


+ 0 - 0
docs/src/concepts/exporting_components.md → docs/guide/src/concepts/exporting_components.md


+ 0 - 0
docs/src/concepts/hooks.md → docs/guide/src/concepts/hooks.md


+ 0 - 0
docs/src/concepts/interactivity.md → docs/guide/src/concepts/interactivity.md


+ 0 - 0
docs/src/concepts/lifecycles.md → docs/guide/src/concepts/lifecycles.md


+ 9 - 2
docs/src/concepts/lists.md → docs/guide/src/concepts/lists.md

@@ -135,7 +135,7 @@ rsx!( li { key: "a" } )
 Keys tell Dioxus which array item each component corresponds to, so that it can match them up later. This becomes important if your array items can move (e.g. due to sorting), get inserted, or get deleted. A well-chosen key helps Dioxus infer what exactly has happened, and make the correct updates to the screen
 
 
-nb: the language from this section is strongly borrowed from [React's guide on keys](https://reactjs.org/docs/lists-and-keys.html).
+NB: the language from this section is strongly borrowed from [React's guide on keys](https://reactjs.org/docs/lists-and-keys.html).
 ### Where to get your key
 
 Different sources of data provide different sources of keys:
@@ -155,7 +155,7 @@ Imagine that files on your desktop didn’t have names. Instead, you’d refer t
 File names in a folder and Element keys in an array serve a similar purpose. They let us uniquely identify an item between its siblings. A well-chosen key provides more information than the position within the array. Even if the position changes due to reordering, the key lets Dioxus identify the item throughout its lifetime.
 
 ### Gotcha
-You might be tempted to use an item’s index in the array as its key. In fact, that’s what React will use if you don’t specify a key at all. But the order in which you render items will change over time if an item is inserted, deleted, or if the array gets reordered. Index as a key often leads to subtle and confusing bugs.
+You might be tempted to use an item’s index in the array as its key. In fact, that’s what Dioxus will use if you don’t specify a key at all. But the order in which you render items will change over time if an item is inserted, deleted, or if the array gets reordered. Index as a key often leads to subtle and confusing bugs.
 
 Similarly, do not generate keys on the fly, `gen_random`. This will cause keys to never match up between renders, leading to all your components and DOM being recreated every time. Not only is this slow, but it will also lose any user input inside the list items. Instead, use a stable ID based on the data.
 
@@ -164,4 +164,11 @@ Note that your components won’t receive key as a prop. It’s only used as a h
 Post { key: "{key}", id: "{id}" }
 ```
 
+## Moving on
 
+In this section, we learned:
+- How to render lists of data
+- How to use iterator tools to filter and transform data
+- How to use keys to render lists efficiently
+
+Moving forward, we'll finally cover user input and interactivity.

+ 0 - 0
docs/src/concepts/managing_state.md → docs/guide/src/concepts/managing_state.md


+ 0 - 0
docs/src/concepts/memoization.md → docs/guide/src/concepts/memoization.md


+ 0 - 0
docs/src/concepts/rsx.md → docs/guide/src/concepts/rsx.md


+ 0 - 0
docs/src/concepts/rsx_in_depth.md → docs/guide/src/concepts/rsx_in_depth.md


+ 0 - 0
docs/src/concepts/server_side_components.md → docs/guide/src/concepts/server_side_components.md


+ 0 - 0
docs/src/concepts/sharedstate.md → docs/guide/src/concepts/sharedstate.md


+ 0 - 0
docs/src/concepts/suspense.md → docs/guide/src/concepts/suspense.md


+ 0 - 0
docs/src/concepts/testing.md → docs/guide/src/concepts/testing.md


+ 0 - 0
docs/src/concepts/vnodes.md → docs/guide/src/concepts/vnodes.md


+ 10 - 0
docs/guide/src/final/index.md

@@ -0,0 +1,10 @@
+# Next Steps and Advanced Topics
+
+
+Congrats! You've made it through the `learning Dioxus` book. Throughout this tutorial, you've learned a ton:
+
+- How to build User Interfaces with Elements
+- How to compose Element groups together as Components
+- How to handle user input with event listeners
+- How to manage global and local state
+- How to work with async using tasks, coroutines, and suspense

+ 0 - 0
docs/src/hello_world.md → docs/guide/src/hello_world.md


+ 0 - 0
docs/src/images/01-setup-helloworld.png → docs/guide/src/images/01-setup-helloworld.png


+ 0 - 0
docs/src/images/compiletimecorrect.png → docs/guide/src/images/compiletimecorrect.png


+ 0 - 0
docs/src/images/dioxuslogo_full.png → docs/guide/src/images/dioxuslogo_full.png


+ 0 - 0
docs/src/images/helloworld.png → docs/guide/src/images/helloworld.png


+ 0 - 0
docs/src/images/reddit.png → docs/guide/src/images/reddit.png


+ 0 - 0
docs/src/images/reddit_post.png → docs/guide/src/images/reddit_post.png


+ 0 - 0
docs/src/images/reddit_post_components.png → docs/guide/src/images/reddit_post_components.png


+ 0 - 0
docs/src/misc/contributors.md → docs/guide/src/misc/contributors.md


+ 1 - 1
docs/src/setup.md → docs/guide/src/setup.md

@@ -34,7 +34,7 @@ You can update the dioxus-cli at any time with:
 $ cargo install --force dioxus-cli
 ```
 
-If your version of the CLI is out of date, it'll remind you to update whenever a new version is uploaded to Rust's package manager [crates.io](https://crates.io). We use a dedicated 1st-party CLI to save you from having to run potentially untrusted code every time you add a crate to your project - as is standard in the NPM ecosystem. You can vet the source of the Dioxus-CLI yourself at its [GitHub repo](https://github.com/jkelleyrtp/dioxus/tree/master/packages/cli).
+We provide this 1st-party tool to save you from having to run potentially untrusted code every time you add a crate to your project - as is standard in the NPM ecosystem.
 
 ### Suggested extensions
 

+ 0 - 0
docs/src/tutorial/advanced_guides.md → docs/guide/src/tutorial/advanced_guides.md


+ 0 - 0
docs/src/tutorial/components.md → docs/guide/src/tutorial/components.md


+ 0 - 0
docs/src/tutorial/index.md → docs/guide/src/tutorial/index.md


+ 0 - 0
docs/src/tutorial/new_app.md → docs/guide/src/tutorial/new_app.md


+ 0 - 0
docs/src/tutorial/publishing.md → docs/guide/src/tutorial/publishing.md


+ 0 - 0
docs/src/tutorial/state.md → docs/guide/src/tutorial/state.md


+ 0 - 0
docs/src/tutorial/structure.md → docs/guide/src/tutorial/structure.md


+ 0 - 0
docs/src/tutorial/styling.md → docs/guide/src/tutorial/styling.md


+ 0 - 0
docs/reference/README.md


+ 0 - 0
docs/reference/SUMMARY.md


+ 0 - 0
docs/reference/book.toml


+ 0 - 0
docs/src/depth/components.md → docs/reference/src/depth/components.md


+ 0 - 0
docs/src/depth/memoization.md → docs/reference/src/depth/memoization.md


+ 0 - 0
docs/src/depth/performance.md → docs/reference/src/depth/performance.md


+ 0 - 0
docs/src/depth/props.md → docs/reference/src/depth/props.md


+ 0 - 0
docs/src/depth/rsx.md → docs/reference/src/depth/rsx.md


+ 0 - 0
docs/src/depth/testing.md → docs/reference/src/depth/testing.md


+ 0 - 0
docs/src/depth/topics.md → docs/reference/src/depth/topics.md


+ 0 - 1
docs/src/for_developers/README.md

@@ -1 +0,0 @@
-# For Developers

+ 0 - 1
docs/src/for_developers/backends.md

@@ -1 +0,0 @@
-# Alternative Backends

+ 0 - 1
docs/src/for_developers/preprocessors.md

@@ -1 +0,0 @@
-# Preprocessors