了解如何在本地安装 WebAssembly,在自己的机器上完成 Exercism 的练习
本 track 全程依赖 Node.js,用它为 WebAssembly 提供运行时。也就是说,我们假定你电脑上所有 JavaScript 都通过 Node.js 来运行。
很多电脑都预装了 Node.js,也可能之前装过,或者是作为依赖被装上的。所以在动手之前,我们先检查一下它是否已经安装:
Terminal、cmd、Powershell、bash……)node -v
如果已安装 Node.js,就会显示一个版本号。把这个版本号记下来。如果_没有_安装 Node.js,则会输出一条错误,通常类似 'node' is not recognised。
打开 Node.js 官网。它会显示_两个_版本(前提是它能检测出你的操作系统;否则请先选择你的操作系统)。如果你 node -v 得到的版本与其中之一相符,就没问题。如果不相符,我们建议你使用 Node.js LTS。如果你担心升级会弄坏系统上的某些东西,也可以当作一切正常,继续往下做;不过万一出了意外,我们可能没法提供支持。
安装 Node.js 有几种方法:
这两种方式都支持 Windows、macOS 和 Linux。如果你不知道该怎么做,用安装程序最简单。
安装程序跑完、包管理器执行完毕,或者二进制文件复制好、说明也照着做完之后,最好测试一下一切是否正常。
Terminal、cmd、Powershell、bash……)node -v
这个版本应该与官网上的一致。
注意:一定要打开一个_新_的终端窗口。安装完成之后,已经打开的终端窗口可能没有刷新,也就是说,它们并不知道新装了程序。
帮助:
'node' is not recognised如果你用的是官方安装程序,
PATH应该已经自动配置好了;但如果你的 shell 无法找到全局安装的模块,或者你从源码构建 Node.js,就需要更新PATH,把npm的可执行文件包含进去。在 macOS 和 Linux 上,你可以把下面的内容加到
~/.bash_profile或~/.zshrc里来实现:export PATH=/usr/local/share/npm/bin:$PATH在 Windows 上,打开开始菜单,搜索“environment variables”。 你需要编辑
PATH这一项,在这里_添加_npm可执行文件的路径。 通常它们位于C:\Program Files\nodejs。 用File Explorer浏览到这里,你应该能找到node.exe、npm.bat和npx.bat。关闭所有已打开的终端,再打开一个新的。
请按照这些说明下载适用于你的操作系统的 Exercism CLI。
CLI 设置并配置好之后,下载第一个练习 hello-world:
exercism download --exercise=hello-world --track=wasm
之后,每个练习都需要一些工具才能运行测试。在每个练习目录中运行下面这个命令即可安装:
npm install
帮助:
'<package>' is missing / cannot be found如果你是在_升级_练习之后看到这条提示的,欢迎来到 npm 7。 删除
node_modules和package-lock.json,然后重新运行该命令就能解决。
如果你担心磁盘空间,又不介意再装一个工具,可以看看 pnpm,它能保证每个包版本在磁盘上只安装一份。
这种情况下,用 pnpm install 代替 npm install,一切应该都能照常工作。
那么 npm 是什么,为什么这样就能用?
完成 JavaScript track 并不需要这些信息,但如果你很想弄明白刚才发生了什么,下面几段就是为你写的:
之所以能这样,是因为
npm是一个随 Node.js 一起提供的包管理器,而 Node.js 已经按上面的步骤装好了。npm命令会去找一个package.json文件,每个练习文件夹里都有这个文件。 这个文件列出了上面的"dependencies",npm会把它们下载下来,放进node_modules文件夹。
package.json里的脚本会用到本地node_modules文件夹中的可执行文件,而运行测试用的正是这些脚本,它们列在exercise说明里。