【问题标题】:How do I get this simple working program to run with node.js?如何让这个简单的工作程序与 node.js 一起运行?
【发布时间】:2021-08-29 10:32:08
【问题描述】:

我编写了一个 JS 程序,它只是一个 D20,它还会根据您滚动的数字(代码如下)吐出一条有趣的消息。我让它在 chrome 浏览器工具中工作,我想尝试让它更容易在 dnd 会话期间一遍又一遍地运行。我将它保存在 Notepad++ 中,我得到了插件 NPPExec,我得到了 node.js,安装了所有东西,然后将我的 Notepad++ 控制台与 node.js 配对,让 node.js 无需切换窗口来复制粘贴代码(注意:我从字面上看只是按照网上的指示一字不差地做到了这一点,它奏效了,我自己不知道如何做到这一点)。

但是,当我尝试在 node.js 控制台(使用:>node xxx.js 或 >node [文件位置])或 in-notepad++ 控制台(使用来自互联网的说明)中运行我的程序时,我得到这 2 个奇怪的错误:

Uncaught ReferenceError: node is not defined

(来自 node.js 控制台)

和

; about to start a child process: "npm.cmd start"
CreateProcess() failed with error code 2:
The system cannot find the file specified.

(来自嵌入在 Notepad++ 中的 node.js 链接控制台)

一切都按照互联网所说的那样保存在一起,我知道该文件存在,因为我在尝试运行它时可以看到它。

现在我将在此处删除一些代码,不确定什么是重要或需要的,但我将包括互联网告诉我用作命令的内容,然后是我编写的 .js,以防我需要在此处添加或更改某些内容让它与 node.js 一起工作

运行NPM命令:

cd "$CURRENT_DIRECTORY)"
npm.cmd start

RunNodejs 命令:

cd "$(CURRENT_DIRECTORY)"
node $(FILE_NAME)

还有有趣的 D20(我知道它有效!:) 我很兴奋):

let roll = Math.ceil(Math.random() * 20);
let tidbit = roll;
console.log(roll);
switch (tidbit) {
    case 1:
        console.log('Oof.');
        break;
    case 2:
        console.log('At least it\'s not  a one!');
        break;
    case 3:
        console.log('They say it\'s lucky, but I don\'t know about that.');
        break;
    case 4:
        console.log('WeirdChamp');
        break;
    case 5:
        console.log('Sadge');
        break;
    case 6:
        console.log('Better hope you have a good modifier!');
        break;
    case 7:
        console.log('ludwig7 in the chat boys');
        break;
    case 8:
        console.log('The future is muddy sometimes.');
        break;
    case 9:
        console.log('Almost halfway to a nat20! Almost.');
        break;
    case 10:
        console.log('Hey DM, can I multiply by 2?');
        break;
    case 11:
        console.log('Make a wish if the time includes an 11.');
        break;
    case 12:
        console.log('You\'re not a baker.');
        break;
    case 13:
        console.log('Is it lucky or unlucky? I\'ve heard it both ways.');
        break;
    case 14:
        console.log('What a dumb number, literally what do I put here?');
        break;
    case 15:
        console.log('Nice cock.');
        break;
    case 16:
        console.log('Your roll can drive! Buy it a car.');
        break;
    case 17:
        console.log('So many songs are named this, why?');
        break;
    case 18:
        console.log('Your roll should go buy a lottery ticket.');
        break;
    case 19:
        console.log('So close to perfect!');
        break;
    case 20:
        console.log('poggers');
        break;
    default:
        console.log('Oops! Lillie messed up');
}

回答:使用 Amith 评论中的路径方法和 Cigien 的 cd /d 命令提示符功能,程序现在可以在 Windows 命令提示符下运行!有史以来最酷的 D20。谢谢!!!

编辑 2:在重新启动记事本 ++ 后,它现在可以让我在其中嵌入运行它!编码是破​​解:)

【问题讨论】:

  • NodeJS 可能未安装或在环境变量中不可用(在 Windows 上)或在路径中不可用(在 unix/linux 上)。
  • @Amith 谢谢!我在窗户上。所以从一个简单的谷歌搜索来看,如果我有这个权利,环境变量似乎只是帮助程序运行的任何东西?我需要得到/更改/弄乱哪些来完成这项工作?一切都安装得很好,除此之外我的理解有限,我只是想让我的代码运行得很好。不过再次感谢!
  • wikihow.com/Change-the-PATH-Environment-Variable-on-Windows 。这是一个易于遵循的指南,您需要通过指定安装 nodejs 的位置将 nodejs 添加到路径。然后你可以从任何终端/控制台访问 nodejs。
  • 好的,使用指南,我将节点安装位置设置为与我的 .js 文件相同的文件夹,但仍然遇到相同的问题,所以我想我可能在某些地方搞砸了 node.js 安装点
  • PATH 条目应该指向可以找到node.exe 的位置,而不是您的.js 文件所在的位置。将PATH 视为“如果我必须按名称运行程序,它可能在我系统上的任何位置,我应该在哪里尝试找到它?”的答案。 (在这种情况下,“程序”是指 Node 而不是您自己的程序,从技术上讲,此时它只是 Node 程序的“输入”。)

标签: javascript node.js notepad++


【解决方案1】:

欢迎并祝贺您的​​第一个编程里程碑!

Uncaught ReferenceError: node is not defined

此错误表明您可能正试图从 Node 中运行 Node。

; about to start a child process: "npm.cmd start"
CreateProcess() failed with error code 2:
The system cannot find the file specified.

似乎 Node 没有将自己放在您的 system PATH 上,或者(可能?)您的 Notepad++ 在您安装 Node 之前就一直在运行。如果不是这样,那么您可能还没有在同一位置编写 package.json 文件,这是 npm start 期望看到的内容以了解实际开始的内容。

在您尝试npm start 命令的地方运行node xxx.js 命令可能会更好。

或者,您可以完全绕过 Notepad++,直接在命令提示符窗口中进行操作:

cd /d "{the folder where xxx.js is created}"
node xxx.js

如果仍然失败,那么下一步可能是调查如何将 Node 添加到您的系统 PATH。最简单的方法可能是卸载并重新安装 Node,确保在安装过程中启用“添加到 PATH”:

重新安装后重新启动将确保每个程序都可以“看到”Node已添加到PATH。

【讨论】:

  • 非常感谢!我首先尝试按照您的建议在另一个控制台中运行node xxx.js,没有骰子(哈哈)。然后我尝试使用 windows cmd,使用 cd /d "{folder}" 并得到错误 ``` 'node' is not known as an internal or external command, operable program or batch file。 ``` 。我认为我的下一步是卸载并重新安装 node.js,然后调查系统 PATH 。 tysm!
  • 好主意。我编辑了我的答案以反映这一点,指出如果选择了正确的选项,Node 安装程序本身会将 Node 添加到 PATH。安装后重新启动是确保添加到PATH 的最简单的方法是被所有人看到。
  • OHMYGOD OHMYGOD OHMYGOD 我让它在 WINDOWS CMD 中运行!!!我使用了上面评论中的指南,然后使用了你的 ``` cd/d "folder" ``` 然后 ``` node xxx.js ``` 它打印了“4奇怪的冠军”,我跳起来大喊大叫,吓坏了猫.
  • 恭喜(并向猫表示哀悼)。随着您继续开发,命令提示符可能会非常有用,但我怀疑您的 PATH 问题已排序,您现在应该也可以按照最初的需要在 Notepad++ 中运行它。
  • 和繁荣。在记事本中运行。 :) 我正式迷上了编码
猜你喜欢
  • 2018-10-03
  • 2016-03-15
  • 1970-01-01
  • 2016-01-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-09-19
相关资源
最近更新 更多