【问题标题】:How do I serve my javascript app locally on Linux Mint如何在 Linux Mint 上本地提供我的 javascript 应用程序
【发布时间】:2021-08-12 08:26:15
【问题描述】:

我目前正在学习教程,并确保遵循每一步。我正在尝试在 localhost:3000 本地托管我的 javascript 应用程序。但是,我无法这样做,每当我尝试运行 npm run dev 时,我都会收到以下错误日志:

0 info it worked if it ends with ok
1 verbose cli [ '/usr/bin/node', '/usr/bin/npm', 'run', 'dev' ]
2 info using npm@6.14.4
3 info using node@v10.19.0
4 verbose run-script [ 'predev', 'dev', 'postdev' ]
5 info lifecycle personalwebsite@0.0.0~predev: personalwebsite@0.0.0
6 info lifecycle personalwebsite@0.0.0~dev: personalwebsite@0.0.0
7 verbose lifecycle personalwebsite@0.0.0~dev: unsafe-perm in lifecycle true
8 verbose lifecycle personalwebsite@0.0.0~dev: PATH: /usr/share/npm/node_modules/npm-lifecycle/node-gyp-bin:/home/omar-backup/Desktop/MrBoogle.github.io/personalWebsite/node_modules/.bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
9 verbose lifecycle personalwebsite@0.0.0~dev: CWD: /home/omar-backup/Desktop/MrBoogle.github.io/personalWebsite
10 silly lifecycle personalwebsite@0.0.0~dev: Args: [ '-c', 'vite' ]
11 silly lifecycle personalwebsite@0.0.0~dev: Returned: code: 1  signal: null
12 info lifecycle personalwebsite@0.0.0~dev: Failed to exec dev script
13 verbose stack Error: personalwebsite@0.0.0 dev: `vite`
13 verbose stack Exit status 1
13 verbose stack     at EventEmitter.<anonymous> (/usr/share/npm/node_modules/npm-lifecycle/index.js:332:16)
13 verbose stack     at EventEmitter.emit (events.js:198:13)
13 verbose stack     at ChildProcess.<anonymous> (/usr/share/npm/node_modules/npm-lifecycle/lib/spawn.js:55:14)
13 verbose stack     at ChildProcess.emit (events.js:198:13)
13 verbose stack     at maybeClose (internal/child_process.js:982:16)
13 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:259:5)
14 verbose pkgid personalwebsite@0.0.0
15 verbose cwd /home/omar-backup/Desktop/MrBoogle.github.io/personalWebsite
16 verbose Linux 5.4.0-26-generic
17 verbose argv "/usr/bin/node" "/usr/bin/npm" "run" "dev"
18 verbose node v10.19.0
19 verbose npm  v6.14.4
20 error code ELIFECYCLE
21 error errno 1
22 error personalwebsite@0.0.0 dev: `vite`
22 error Exit status 1
23 error Failed at the personalwebsite@0.0.0 dev script.
23 error This is probably not a problem with npm. There is likely additional logging output above.
24 verbose exit [ 1, true ]

我已经花了大约一个小时试图弄清楚这一点,但还没有找到任何东西。我安装了 vite 但没有托管(我试图在 localhost:3000 上托管我的应用程序),而是使用 qt5ct 弹出一个奇怪的窗口。不幸的是,这不再有效,因为我可能在试图让它工作时搞砸了。 我正在关注的教程可以在here 找到。我遇到了2:45 标记周围的问题。

【问题讨论】:

  • 在目录上,在运行“npm run dev”之前添加以下上一步:“npm install”然后用npm run dev重试。成功了吗?
  • @IgnacioAcuña 不,没用。找不到模块“worker_threads”

标签: javascript npm localhost


【解决方案1】:

当您使用 npm init 创建项目时,就像您在教程中看到的那样,在某个目录中创建来自模板的项目。在你的情况下,你跑了:

npm init @vitejs/app

此命令为您提供了一个包含一些预定义 Node.JS 模板的文件夹,它为您创建了一个 package.json,其中包含该项目能够工作所需的所有依赖项。以你的情况为例:

{
  "name": "vite-project",
  "version": "0.0.0",
  "scripts": {
    "dev": "vite",
    "build": "vite build",
    "serve": "vite preview"
  },
  "devDependencies": {
    "vite": "^2.3.3"
  }
}

可以看到,有一个devDependency调用vite,需要安装才能执行dev的npm脚本,翻译成"dev": "vite" em>。

之前运行的时候,项目中没有安装vite依赖,这就是报错的原因:

error personalwebsite@0.0.0 dev: `vite`

当您运行 npm install 时,它会安装 package.json 的所有必需依赖项。因此,在您使用 npm install 安装 vite 依赖项后(它将采用 package.json 定义),它不再缺少依赖项。

这就是为什么您的错误更改为:

 Cannot find module 'worker_threads' 

这是其他错误,可能是因为您正在使用和old version of node(信息使用node@v10.19.0)。 尝试复制我遇到了同样的问题:

但是当我更新到较新的版本(节点 14)时,它并没有发生。所以,just update your node version

【讨论】:

  • 太棒了,这成功了!由于我的 npm,我遇到了其他一些问题,但我修复了这个问题,更新我的节点版本修复了其他所有问题。谢谢:)
猜你喜欢
  • 1970-01-01
  • 2015-01-21
  • 2022-08-11
  • 2011-02-17
  • 1970-01-01
  • 1970-01-01
  • 2020-02-18
  • 2021-12-28
  • 2019-02-21
相关资源
最近更新 更多