首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何要求Node.js模块?

如何要求Node.js模块?
EN

Stack Overflow用户
提问于 2019-01-14 17:24:29
回答 1查看 257关注 0票数 1

MDN编写锈蚀到WASM指南声明如下:

这将从node_modules文件夹导入我们的模块。这被认为不是一个最佳实践,但这是一个演示,所以我们将使用它目前。

它引用了以下代码片段:

代码语言:javascript
代码运行次数:0
运行
复制
const js = import("./node_modules/@yournpmusername/hello-wasm/hello_wasm.js");

导入hello-wasm模块的“最佳实践”是什么?

我确实尝试了我认为可以工作的东西,因为它是您导入其他已安装模块的方式,但它没有工作:

代码语言:javascript
代码运行次数:0
运行
复制
const js = require("hello-wasm");

这给了一个模块找不到错误。请注意,node_modules确实包括由npm放在那里的hello-wasm目录。

"main": "hello_wasm.js"添加到hello_wasm包中的package.json会导致以下错误:

代码语言:javascript
代码运行次数:0
运行
复制
A JavaScript error occurred in the main process
Uncaught Exception:
/home/vinnie/electron-wasm/node_modules/hello-wasm/hello_wasm.js:2
import * as wasm from './hello_wasm_bg';
       ^

SyntaxError: Unexpected token *
EN

回答 1

Stack Overflow用户

发布于 2019-01-14 20:02:06

也许您无法导入,因为正确的包名是@yournpmusername/hello-wasm而不是hello-wasm。您可能需要查看package.json文件。

我想,“最佳实践”将是大多数人在以同步方式导入外部依赖项时所做的相同实践,即编写import { foo, bar } from 'wasm-module-example',但是存在问题,这种行为将取决于您正在使用的绑定器。

Parcel使导入wasm模块webpack变得容易,而webpack是MDN指南中使用的绑定器,有一些注意事项,所以目前最好是异步导入而不是同步导入。

代码语言:javascript
代码运行次数:0
运行
复制
import('@yournpmusername/hello-wasm').then(wasm => wasm.some_function()).catch(console.error);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54186369

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档