簡體   English   中英

js導入找不到wasm文件

[英]js import not finding wasm file

我正在努力從 rust 構建以下 wasm 示例:

例子

我已經執行了

貨物建造

它解決了目標/調試/文件中的 libdom.d 和 libdom.so 文件。

應用程序以給定開始

npm 運行服務

但是當js嘗試在線導入wasm文件時它會拋出錯誤:

進口('./pkg/dom')

導致

> @ serve /home/kamil/projects/dom
> webpack-dev-server

🧐  Checking for wasm-pack...

ℹ️  Installing wasm-pack 

ℹ 「wds」: Project is running at http://localhost:8080/
ℹ 「wds」: webpack output is served from /
ℹ 「wds」: Content not from webpack is served from /home/kamil/projects/dom
ℹ 「wdm」: wait until bundle finished: /
wasm-pack error: undefined
✖ 「wdm」: Hash: d6af309c4a2560e4a081
Version: webpack 4.36.1
Time: 21666ms
Built at: 07/18/2019 6:53:10 PM
     Asset       Size  Chunks             Chunk Names
index.html  226 bytes          [emitted]  
  index.js    360 KiB    main  [emitted]  main
Entrypoint main = index.js
[0] multi (webpack)-dev-server/client?http://localhost ./index.js 40 bytes {main} [built]
[./index.js] 133 bytes {main} [built]
[./node_modules/ansi-html/index.js] 4.16 KiB {main} [built]
[./node_modules/ansi-regex/index.js] 135 bytes {main} [built]
[./node_modules/html-entities/index.js] 231 bytes {main} [built]
[./node_modules/loglevel/lib/loglevel.js] 7.68 KiB {main} [built]
[./node_modules/strip-ansi/index.js] 161 bytes {main} [built]
[./node_modules/webpack-dev-server/client/index.js?http://localhost] (webpack)-dev-server/client?http://localhost 4.29 KiB {main} [built]
[./node_modules/webpack-dev-server/client/overlay.js] (webpack)-dev-server/client/overlay.js 3.51 KiB {main} [built]
[./node_modules/webpack-dev-server/client/socket.js] (webpack)-dev-server/client/socket.js 1.53 KiB {main} [built]
[./node_modules/webpack-dev-server/client/utils/createSocketUrl.js] (webpack)-dev-server/client/utils/createSocketUrl.js 2.77 KiB {main} [built]
[./node_modules/webpack-dev-server/client/utils/log.js] (webpack)-dev-server/client/utils/log.js 964 bytes {main} [built]
[./node_modules/webpack-dev-server/client/utils/reloadApp.js] (webpack)-dev-server/client/utils/reloadApp.js 1.63 KiB {main} [built]
[./node_modules/webpack-dev-server/client/utils/sendMessage.js] (webpack)-dev-server/client/utils/sendMessage.js 402 bytes {main} [built]
[./node_modules/webpack/hot sync ^\.\/log$] (webpack)/hot sync nonrecursive ^\.\/log$ 170 bytes {main} [built]
    + 18 hidden modules

ERROR in ./index.js
Module not found: Error: Can't resolve './pkg/dom' in '/home/kamil/projects/dom'
 @ ./index.js 3:0-19
Child html-webpack-plugin for "index.html":
     1 asset
    Entrypoint undefined = index.html
    [./node_modules/html-webpack-plugin/lib/loader.js!./index.html] 372 bytes {0} [built]
    [./node_modules/lodash/lodash.js] 528 KiB {0} [built]
    [./node_modules/webpack/buildin/global.js] (webpack)/buildin/global.js 472 bytes {0} [built]
    [./node_modules/webpack/buildin/module.js] (webpack)/buildin/module.js 497 bytes {0} [built]
ℹ 「wdm」: Failed to compile.

沒有./pkg/dom文件夾。 我不知道如何生成它,也不知道里面應該有什么。

index.js 文件試圖import('./pkg')不存在的import('./pkg') 您可以通過運行wasm-pack build生成此文件夾。 這樣做之后,您應該有一個./pkg文件夾,其中包含 wasm 二進制文件和 JS 包裝器代碼。 有關命令的更多信息,請參閱wasm-pack README

與 Rust 一起玩,很容易只調用cargo build並期望它創建 wasm 二進制文件,但是 wasm-pack 實際上幕后做了很多 但最終, wasm-pack build確實調用了cargo build

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM