小编Ken*_*ore的帖子

如何检查我的pm2应用程序NODE_ENV是否已设置?

所以我第一次部署了一个带节点和pm2的站点,我要回去做一些优化并阅读最佳实践等.

我读到你可以通过设置获得很多好处NODE_ENV=production.

我在pm2文档中发现了这个:

[process.json]
"env_production" : {
  "NODE_ENV": "production"
}

...

$ pm2 start process.json --env production
Run Code Online (Sandbox Code Playgroud)

所以,我做到了,但我不知道它是否有效.在试图找出如何检查它时,我学会了尝试:

$ node
> process.env.NODE_ENV
> undefined
Run Code Online (Sandbox Code Playgroud)

所以,这不是一个好兆头......但是,由于我对低级别的东西的工作原理有限,我猜可能pm2会将每个应用程序作为一个单独的节点进程启动?所以,当我尝试检查它时,我可能不是在正确的过程中.

另外,我不知道是否必须创建一个新的〜/ .pm2/dump.pm2文件,因为可能只要覆盖我设置的选项?(因为我用过pm2 startup).

如何检查我的pm2应用程序的NODE_ENV是否已设置?

node.js express pm2

13
推荐指数
4
解决办法
3万
查看次数

每次应用重启时,如何阻止Chrome的Node Dev Tools聚焦窗口?

我已经用--inspect旗帜启动了我的Node应用程序,我在网址上使用了Chrome的Node Dev Tools about:inspect; 效果很好.

问题是我也在使用PM2节点进程管理器来监视我的文件并在发生更改时自动重启我的Node进程,正如我通常在开发中那样,每次我保存文件时,Node Dev Tools窗口都会成为焦点.

我在开发工具设置中找不到任何相关内容.

我在Chrome 62.0.3202.89,Ubuntu 16.04 64位,如果这很重要.

附带问题:是否可以在标签中使用Chrome开发工具而不是浮动窗口?我以为这曾经是可能的,但现在我找不到选项了.

google-chrome node.js google-chrome-devtools

10
推荐指数
0
解决办法
540
查看次数

如何阻止MySQL十进制字段被舍入?

我在MySQL中有一个表,其中包含十进制,长度为9,无符号的字段.我用它来代价.

在我插入数据并查询它之后,它全部被舍入并且小数已被删除.

我很困惑为什么.

疑难解答?


主持人:web.com

phpMyAdmin版本:2.11.10.1

MySQL客户端版本:5.0.95

php mysql sql

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

在Loopback中设置访问令牌cookie?

我想使用cookie来保持用户登录.

在这个页面在这里,他们说

要使用cookie进行身份验证,请将以下内容添加到server.js(引导前):

app.use(loopback.token({ model: app.models.accessToken }));
Run Code Online (Sandbox Code Playgroud)

看似简单.我认为在登录过程中,Loopback会自动设置cookie,但它仍然无法正常工作,我在Chrome开发工具中检查我的cookie并且没有设置.

我错过了什么吗?否则,什么是挂钩登录方法以设置cookie /标头的最佳方法?

我在这里找到了关于这个loopback.token()方法的文档,它确切地说明了它检查令牌的位置.

node.js express loopbackjs

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

如何在悬停时更改SVG图像的颜色?

可能重复:
使用javascript更改SVG图像颜色

当我将鼠标悬停在SVG图像上时,我想更改它的填充.

现在我有一个从Illustrator导出到SVG的黑色问号.我可以使用img标签放在我的页面上,它显示正常,但我不知道如何更改代码中的颜色.

html javascript css svg

5
推荐指数
2
解决办法
3万
查看次数

如何为后端和前端使用一个包管理器?(纱线/NPM)

以前,我将 NPM 用于服务器端,而 Bower 用于前端。NPM 将安装到该node_modules/目录,我必须.bowerrc将这些包安装到public/lib.

现在我已经开始使用 Yarn 而不是 NPM;并且由于它们几乎是 1:1 兼容的,因此这是一个平滑的变化.. 但是,现在我想知道我是否可以放弃 Bower 而只使用 Yarn 来处理所有事情。但是我没有看到(在 NPM 或 Yarn 中)将普通包安装到 node_modules 的方法,但是然后有一种单独的选项可以将一些包放入public/......类似于该--dev选项的东西,但它会是yarn add jquery --public. 这样的东西存在吗?

当然,一种选择是将所有软件包安装到public/目录中,但我认为这是一种不好的做法(如果我错了,请纠正我)。

另一种选择可能是package.jsonpublic/文件夹中有一个单独的文件夹并在其中为前端包运行单独的 Yarn 命令,但我认为它不太方便;更容易出错。

javascript node.js npm yarnpkg

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

Angular:ViewChild 音频元素作为 HTMLAudioElement?

我试图audio在组件中获取一个元素。起初我是用老式的方式做的:

$player: HTMLAudioElement;
...
ngOnInit() {
  this.$player = document.getElementById('stream')
}
Run Code Online (Sandbox Code Playgroud)

但我想做The Angular Way™,所以我想我应该使用@ViewChild. 但它返回 anElementRef并且我必须反复钻取该nativeElement属性才能实际作用于该元素,而且它看起来更混乱。

我就喜欢做这样的事情:

@ViewChild('stream') $player: HTMLAudioElement;

但这不起作用。

typescript viewchild angular

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

'self = this'vs apply或bind?(骨干)

通常在我的Backbone代码中,我遇到了一些情况,我会将一个闭包传递给某个函数并丢失'this'的上下文.

我的解决方案已经有一段时间了,我做过其他人做过的事情:

var self = this;

this.deferred.done(function () {
    self.render();
});
Run Code Online (Sandbox Code Playgroud)

或者实际上我切换到了_this = this,但那不是重点.它有效,但感觉很难看,我有时必须经常这样做.所以我试图想出一个更好的方法来做到这一点.我知道我可以这样做:

this.deferred.done(function () {
    this.render();
}.apply(this));
Run Code Online (Sandbox Code Playgroud)

我想我也可以使用Underscore来做到这一点:

this.deferred.done(_.bind(function () {
    self.render();
}, this));
Run Code Online (Sandbox Code Playgroud)

这个apply方法看起来最简洁,但我觉得它有副作用(我只是不知道它是什么).

编辑:

看看这个JSbin,我使用的应用类似于我提到的:http://jsbin.com/qobumu/edit?js,console

它工作,但它同时抛出一个错误.如果我更改applybind,它可以工作,不会抛出错误.

javascript backbone.js underscore.js

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

使用 Node URL 模块,您如何一次设置所有搜索参数?

我看到你可以这样做:

myUrl.searchParams.set('param1', 'value');
myUrl.searchParams.set('param2', 'value');
...
Run Code Online (Sandbox Code Playgroud)

我想做的更像是:

myUrl.searchParams.set({
    param1: 'value',
    param2: 'value
});
Run Code Online (Sandbox Code Playgroud)

但这不起作用。

在文档中看到您可以使用URLSearchParams该类来执行此操作:

myParams = new URLSearchParams({
    param1: 'value',
    param2: 'value
});
Run Code Online (Sandbox Code Playgroud)

但我想不通的是如何使用它。这些不起作用:

myUrl.searchParams = myParams;
Run Code Online (Sandbox Code Playgroud)

或者

myUrl.searchParams.set(myParams);
Run Code Online (Sandbox Code Playgroud)

我尝试过的其他一些事情也没有。除非我快疯了,否则我在文档中找不到它显示如何执行此操作的位置

javascript url node.js

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