相关疑难解决方法(0)

将命令行参数发送到npm脚本

scriptspackage.json目前的部分看起来像这样:

"scripts": {
    "start": "node ./script.js server"
}
Run Code Online (Sandbox Code Playgroud)

...这意味着我可以运行npm start来启动服务器.到现在为止还挺好.

但是,我希望能够运行类似的东西npm start 8080并将参数传递给script.js(例如npm start 8080=> node ./script.js server 8080).这可能吗?

javascript node.js npm

691
推荐指数
12
解决办法
38万
查看次数

设置要检索的节点的环境变量

我正在尝试按照教程说它:

"有几种方法可以加载凭据.

  1. 从环境变量加载,
  2. 从磁盘上的JSON文件加载,

密钥需要如下:

USER_ID, USER_KEY
Run Code Online (Sandbox Code Playgroud)

...这意味着如果您正确设置环境变量,则根本不需要在应用程序中管理凭据."

基于一些谷歌搜索,似乎我需要设置变量process.env?我如何以及在何处设置这些凭据?示例请.

environment-variables node.js

386
推荐指数
12
解决办法
58万
查看次数

警告:“test”的 NODE_ENV 值与任何部署配置文件名都不匹配

尽管所有测试都表明一切正常,但在运行 node.js 应用程序时收到此警告。

我已在我的应用程序中包含以下代码以进行故障查找:

console.log('NODE_ENV: ' + config.util.getEnv('NODE_ENV')); console.log('NODE_CONFIG_DIR: ' + config.util.getEnv('NODE_CONFIG_DIR'));

终端的输出是:

NODE_ENV: test NODE_CONFIG_DIR: C:\Users\[username]\OneDrive - [Company Name]\Documents\projects\[project name]\server\config

终端输出

终端输出

在该文件夹内(通过将 URI 复制并粘贴到资源管理器中进行验证)有两个文件:

default.json test.json

配置文件夹内容

配置文件夹内容

这对我来说似乎是正确的,我已经检查了指南,但看不到任何东西,检查了谷歌点击量,答案似乎没有关联。任何帮助将不胜感激。

node.js node-config

10
推荐指数
1
解决办法
1万
查看次数

nextjs - 使用 NODE_ENV=development 进行下一个构建

我想将我的nextjs项目构建为开发模式。

我试过喜欢它

包.json

{
  ...
  "scripts": {
    "dev": "next",
    "build:dev": "set NODE_ENV=development & next build",
    "build:prod": "set NODE_ENV=production & next build",
    "start:dev": "set NODE_ENV=development & next start",
    "start:prod": "set NODE_ENV=production & next start"
  }
  ...
}
Run Code Online (Sandbox Code Playgroud)

下一个.config.js

module.exports = withSass({
  env: {
    baseUrl: process.env.NODE_ENV === "development" ? "devServerURL": "prodServerURL"
  }
});
Run Code Online (Sandbox Code Playgroud)

但我无法实现我想要的。

所以,我尝试了一些改变。

包.json

  "scripts": {
    "dev": "next",
    "build": "next build",
    "start:dev": "set NODE_ENV=development & next start",
    "start:prod": "set NODE_ENV=production & next start"
  }
Run Code Online (Sandbox Code Playgroud)

但它也不起作用。

如何构建 …

reactjs next.js

9
推荐指数
2
解决办法
5745
查看次数

NPM:如何在 package.json 的预启动脚本中挂钩 SET NODE_ENV?

我有一个使用 npm init -y 创建的基本应用程序。在 package.json 中,我有一个指向 server.js 的主条目。

{
  "name": "rest-api",
  "version": "1.0.0",
  "description": "",
  "main": "server.js",
  "private": true,
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "prestart": "SET NODE_ENV=dev"
}
Run Code Online (Sandbox Code Playgroud)

我试图在预启动中设置 NODE_ENV 变量,并让 npm 调用 main 来调用 npm start。但是预启动中设置的环境变量不会被继承并且未定义。当我运行“npm start”时,控制台输出两个命令都按顺序执行。

    PS D:\test\RestAPI> npm start

    > rest-api@1.0.0 prestart D:\test\RestAPI
    > set NODE_ENV=dev

    > rest-api@1.0.0 start D:\test\RestAPI
    > node server.js

    undefined
    [undefined] Listening on http://localhost:3000
Run Code Online (Sandbox Code Playgroud)

但是当我从应用程序打印变量时,它是未定义的。我在这里做错了什么,或者这是它应该表现的方式吗?有没有办法使用“SET NODE_ENV=dev”调用和设置环境变量,而不将其链接到“node server.js”

当我将两者组合在“开始”中时,如下所示,然后设置环境变量。

  "scripts": {
    "test": "echo \"Error: no test specified\" …
Run Code Online (Sandbox Code Playgroud)

node.js npm

6
推荐指数
1
解决办法
6088
查看次数

如何在 package.json 内的 npm 脚本中使用 SECRET_ENV?

我有一个名为的秘密密钥API_KEY,我想访问package.json's的内部scripts

包.json

{
   "scripts": {
      "start": "web-ext run --api-key=API_KEY"
   }
}
Run Code Online (Sandbox Code Playgroud)

我的.env文件包含API_KEY

API_KEY=abc123
Run Code Online (Sandbox Code Playgroud)

API_KEY我如何才能访问insidepackage.json的值,scripts同时仍然保密,因为我需要公开推送package.json

目前,我执行以下操作,但不能跨平台:

包.json

{
   "scripts": {
      "start": "web-ext run --api-key=$API_KEY"
   }
}
Run Code Online (Sandbox Code Playgroud)

当运行start脚本时,我这样做:

API_KEY=abc123 npm start
Run Code Online (Sandbox Code Playgroud)

这要归功于 Bash 编程语言,但它不适用于 Windows。我需要$API_KEYstart脚本中替换为%API_KEY%. 但我希望它是跨平台的。还有其他办法吗?

javascript environment-variables node.js secret-key

6
推荐指数
1
解决办法
3032
查看次数

更改 npm 审核默认行为

我正在寻求更改 的默认行为npm audit

默认行为是审核所有包,包括仅限开发人员的包。这不是很有用,因为我信任我的开发环境并且更关心生产级别的安全性。这并不是说我完全忽略了开发漏洞,因为我仍然在研究它们,而是想把重点放在更重要的事情上——生产。

npm audit从版本 6 开始就有了--production审核命令的标志。运行时如何使该标志默认为 true npm audit?我想--production--omit=dev我的package.json. 这可能吗?

(此外,任何有关此行动的后果的讨论或澄清您认为我可能有的任何误解也将受到欢迎,因为我不能反对了解更多信息。)

security audit npm

6
推荐指数
1
解决办法
435
查看次数

在Vue开发工具中未检测到Vuex存储

由于非常具体的原因,我在生产中将vue开发工具设置为true。

Vue.config.devtools = true
Run Code Online (Sandbox Code Playgroud)

我正在使用以下版本:

"vue": "^2.5.2"
"vuex": "^3.0.1"
"vuetify": "^1.0.0"
Run Code Online (Sandbox Code Playgroud)

虽然可以看到组件和事件,但未检测到Vuex存储。

我曾尝试将vuex版本降级到2.3.1和2.4.x,但没有帮助。这是我引用的链接-https: //github.com/vuejs/vue-devtools/issues/405

注意-该商店运作良好,只是我无法在Vue开发工具中查看它。

任何指针表示赞赏。

google-chrome vue.js vuex vue-devtools

3
推荐指数
1
解决办法
3010
查看次数

Google Cloud 抛出错误:无法在 Nodejs 中加载默认凭据

我已将此服务帐户密钥 (my-key.json) 文件存储在我的下载文件夹 (ubuntu) 中,然后将此命令运行到我的控制台中

export GOOGLE_APPLICATION_CREDENTIALS="/home/user/Downloads/my-key.json"

根据 谷歌云。现在我正在运行此代码,但它引发了我的错误。

const language = require('@google-cloud/language');

const quickstart = async function () {
  // Instantiates a client
  const client = new language.LanguageServiceClient();
 
  // The text to analyze
  const text = 'Hello, world!';
 
  const document = {
    content: text,
    type: 'PLAIN_TEXT',
  };
 
  // Detects the sentiment of the text
  const [result] = await client.analyzeSentiment({document: document});
  const sentiment = result.documentSentiment;
 
  console.log(`Text: ${text}`);
  console.log(`Sentiment score: ${sentiment.score}`);
  console.log(`Sentiment magnitude: ${sentiment.magnitude}`);
}


quickstart();
Run Code Online (Sandbox Code Playgroud)
**ERORR** -
(node:13928) UnhandledPromiseRejectionWarning: …
Run Code Online (Sandbox Code Playgroud)

javascript google-api node.js google-cloud-platform

3
推荐指数
1
解决办法
1633
查看次数

将多个变量传递给 package.json 脚本

我有package.json(不是 BASH,不是 SH,不是 ZSHELL,不是鱼)。

因此,在确定这是我的package.json文件这一事实之后,让我向您展示它:

包.json

  "scripts": {
    "dev": "NODE_ENV=myValue myProgram"
  }
Run Code Online (Sandbox Code Playgroud)

我想在MYVAR=myOtherValue上面的文件中添加更多变量(例如),这是我的package.json文件。我该怎么做(在我的 package.json 文件中添加更多变量)?

让我明确一点,我不想阅读 bash 或 zshell、fish 或 sh 的联机帮助页。这就是为什么我把问题放在这里但没有阅读联机帮助页 - 否则我不会把它放在这里并且会阅读联机帮助页。谢谢你的理解。

environment-variables node.js npm npm-scripts

1
推荐指数
1
解决办法
2941
查看次数

如何在react js中更改默认端口

我可以使用默认端口 3000 启动 react js。但是,当我将端口自定义为 4200 时"start": "PORT=4200 react-scripts start"(只是在 package.json 中更改),我无法启动 react js 应用程序。

'PORT' is not recognized as an internal or external command,
operable program or batch file.
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! todo-app@0.1.0 start: `PORT=4200 react-scripts start`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the todo-app@0.1.0 start script.
npm ERR! This is probably not a problem with npm. There is likely additional lo
ging output above. …
Run Code Online (Sandbox Code Playgroud)

javascript node.js reactjs create-react-app

0
推荐指数
2
解决办法
9575
查看次数