Merge pull request #1080 from tw1t611/fix-todomvc

Fix todomvc
This commit is contained in:
Alex Crichton 2018-12-03 05:10:09 -06:00 committed by GitHub
commit a9eb20b4dc
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 14 additions and 8 deletions

View File

@ -3,10 +3,8 @@
# For more comments about what's going on here, see the `hello_world` example
set -ex
cd "$(dirname $0)"
cargo build --target wasm32-unknown-unknown
cargo run --manifest-path ../../crates/cli/Cargo.toml \
--bin wasm-bindgen -- \
../../target/wasm32-unknown-unknown/debug/todomvc.wasm --out-dir .

View File

@ -37,6 +37,5 @@
<p>Written by <a href="http://twitter.com/KingstonTime/">Jonathan Kingston</a></p>
<p>Part of <a href="http://todomvc.com">TodoMVC</a></p>
</footer>
<script src='./index.js'></script>
</body>
</html>

View File

@ -1,3 +1,4 @@
import('./todomvc').then(todomvc => {
todomvc.run();
});
// For more comments about what's going on here, check out the `hello_world`
// example
import('./todomvc')
.catch(console.error);

View File

@ -4,8 +4,9 @@
"serve": "webpack-dev-server"
},
"devDependencies": {
"text-encoding": "^0.7.0",
"copy-webpack-plugin": "^4.6.0",
"html-webpack-plugin": "^3.2.0",
"text-encoding": "^0.7.0",
"webpack": "^4.11.1",
"webpack-cli": "^3.1.1",
"webpack-dev-server": "^3.1.0"

View File

@ -64,7 +64,9 @@ fn app(name: &str) {
/// Entry point into the program from JavaScript
#[wasm_bindgen(start)]
pub fn run() {
pub fn run() -> Result<(), JsValue> {
console_error_panic_hook::set_once();
app("todos-wasmbindgen");
Ok(())
}

View File

@ -1,5 +1,6 @@
const path = require('path');
const HtmlWebpackPlugin = require('html-webpack-plugin');
const CopyWebpackPlugin = require('copy-webpack-plugin');
const webpack = require('webpack');
module.exports = {
@ -12,6 +13,10 @@ module.exports = {
new HtmlWebpackPlugin({
template: "index.html"
}),
new CopyWebpackPlugin([
{ from: 'index.css', to: 'index.css' },
]),
// Have this example work in Edge which doesn't ship `TextEncoder` or
// `TextDecoder` at this time.
new webpack.ProvidePlugin({