mirror of
https://github.com/react/react-native-devtools-frontend.git
synced 2026-09-30 17:27:22 +08:00
In Devtools-Frontend we load images without a leading slash, e.g. url(Images/checker.png). This works within devtools, but breaks this component server as the path ends up as /component_docs/my_component/Image/checker.png. So we check if the path ends in Images/*.* and if so, remove anything before it. Then it will be resolved correctly. Fixed: 1128914 Change-Id: I476165d16b19713b3c095d5969fac95a5d26a678 Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2414190 Reviewed-by: Kateryna Prokopenko <kprokopenko@google.com> Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
Components dev server
This server serves up examples of the web components built within DevTools and provides a useful way to document various states of components.
For more background, see the initial proposal and design doc.
To add an example for your component:
- Create
front_end/component_docs/DIRwhereDIRis the name of your component. - Within the new
DIR, add HTML files. Each one of these is a standalone example. You should name the HTML file based on what it's documenting, e.g.basic.htmlordata-missing.html. This file should import your component and render it with the data you need. - Create a
BUILD.gnin your newDIR. This should contain the following code:
import("../../../scripts/build/ninja/copy.gni")
copy_to_gen("elements_breadcrumbs") {
sources = [
"example1.html",
# list all other examples here
]
deps = [
# Any dependencies your examples rely on.
# For example, if they depend on code in the elements module:
"../../elements"
]
}
- Update
front_end/component_docs/BUILD.gnto add your new directory'sBUILD.GNto thepublic_depsarray. - Run
npm run components-serverto fire up a server onlocalhost:8090. You should now see your component listed and you can click on the link to view the examples. - Note: the server assumes your built target is
Default. If not, run the server and pass the--targetflag:npm run components-server -- --target=Release.