mirror of
https://github.com/rustwasm/wasm-bindgen.git
synced 2025-01-07 13:43:03 +03:00
Add documentation for importing export default
(#2403)
Added some documentation to the `js_name` page about using it to import JavaScript modules that use `export default`.
This commit is contained in:
parent
d6825ad5ef
commit
b79f5b2739
@ -58,4 +58,30 @@ extern "C" {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
The `js_name` attribute can also be used in situations where a JavaScript module uses
|
||||||
|
`export default`. In this case, setting the `js_name` attribute to "default" on the
|
||||||
|
`type` declaration, and the [`js_class` attribute][jsclass] to "default" on any methods
|
||||||
|
on the exported object will generate the correct imports.
|
||||||
|
|
||||||
|
|
||||||
|
For example, a module that would be imported directly in JavaScript:
|
||||||
|
|
||||||
|
```javascript
|
||||||
|
import Foo from "bar";
|
||||||
|
|
||||||
|
let f = new Foo();
|
||||||
|
```
|
||||||
|
|
||||||
|
Could be accessed using this definition in Rust:
|
||||||
|
|
||||||
|
```rust
|
||||||
|
#[wasm_bindgen(module = "bar")]
|
||||||
|
extern "C" {
|
||||||
|
#[wasm_bindgen(js_name = default)
|
||||||
|
type Foo;
|
||||||
|
#[wasm_bindgen(constructor, js_class = default)]
|
||||||
|
pub fn new() -> Foo;
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
[jsclass]: js_class.html
|
[jsclass]: js_class.html
|
||||||
|
Loading…
Reference in New Issue
Block a user