Reorganize and rewrite examples

This commit is a large-ish scale reorganization of our examples. The
main goal here is to have a dedicated section of the guide for example,
and all examples will be listed there. Each example's `README` is now
just boilerplate pointing at the guide along with a blurb about how to
run it.

Some examples like `math` and `smorgasboard` have been deleted as they
didn't really serve much purpose, and others like `closures` have been
rewritten with `web-sys` instead of hand-bound bindings.

Overall it's hoped that this puts us in a good and consistent state for
our examples, with all of them being described in the guide, excerpts
are in the guide, and they're all relatively idiomatically using
`web-sys`.
This commit is contained in:
Alex Crichton
2018-09-20 16:20:42 -07:00
parent a85e49a2b4
commit 3efe51eb8b
128 changed files with 939 additions and 1304 deletions

View File

@ -1,9 +1,10 @@
# Importing non-browser JS
This directory is an example of using the `#[wasm_bindgen]` macro to import the
JS defined by you rather than the browser.
[View documentation for this example online][dox]
You can build the example with:
[dox]: https://rustwasm.github.io/wasm-bindgen/examples/import-js.html
You can build the example locally with:
```
$ ./build.sh
@ -11,10 +12,4 @@ $ ./build.sh
(or running the commands on Windows manually)
and then opening up `index.html` in a web browser and see some messages in the
console.
For more information about this example be sure to check out
[`hello_world`][hello] which also has more comments about caveats and such.
[hello]: https://github.com/alexcrichton/wasm-bindgen/tree/master/examples/hello_world
and then visiting http://localhost:8080 in a browser should run the example!

View File

@ -3,7 +3,6 @@
<meta content="text/html;charset=utf-8" http-equiv="Content-Type"/>
</head>
<body>
<script src='./index.js'></script>
<p>Open up the developer console and you should see "Hello from Rust!"</p>
</body>
</html>

View File

@ -19,7 +19,7 @@ extern "C" {
fn render(this: &MyClass) -> String;
}
// Import `console.log` so we can log something to the console
// lifted from the `console_log` example
#[wasm_bindgen]
extern "C" {
#[wasm_bindgen(js_namespace = console)]