小编Man*_*kis的帖子

npm install npm -g不会将npm更新为最新版本

我使用的是npm v5.3.0.现在我想将npm更新为v5.4.1.为此,我在终端中键入以下内容:

npm install -g npm

没有任何错误.但是当我输入npm -v的版本是5.3.0而不是5.4.1

我必须提到我已将npm前缀更改为另一个目录.有任何想法吗?我使用的是Ubuntu 17.04

这是我的控制台输出: 在此输入图像描述

npm

12
推荐指数
3
解决办法
5159
查看次数

缺少Git kraken菜单栏

我使用gitkraken已经有一段时间但是我注意到在v2.5之后菜单栏(或工具栏)丢失了.结果我不能最小化gitkraken.所以如果我想在gitkraken和另一个窗口之间改变我有按Alt+ Tab.没有关闭按钮也没有最小化.这是它的样子: 在此输入图像描述

我正在使用Ubuntu 17.04 budgie remix.任何想法?

git ubuntu gitkraken

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

使用pm2编程API重命名过程

我有一个电子应用程序,它使用pm2来启动使用pm2模块的某些应用程序,一切都很好,但是我试图实现以下功能:重命名已启动的应用程序。我知道使用cli可以执行以下操作:

pm2 restart app --name"New name";

所以我找到了pm2.restart一个以Object和callback作为参数的函数,所以我尝试了一下:

var options = {app:"Blogsport App",name:"New name"};
var callback = function(err){
   if(err) {console.log('Failed')}
   else {console.log('App renamed')}
};

pm2.restart(options,callback);
Run Code Online (Sandbox Code Playgroud)

这将始终记录“应用程序已重命名”。但是,如果我pm2 list看到该应用程序未被重命名,是否可以做些什么来重命名应用程序而不删除它,并使用其他名称重新启动它?

node.js pm2 electron

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

找到sublime text build 3132的deb文件

在构建3132崇高文本页面后,不再为deb安装文件提供下载链接.有没有办法找到deb文件链接而无需从apt安装它们?

apt sublimetext3

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

获取所有系统字体electron js

我正在使用Electron构建桌面应用程序。在我的应用程序中,我有一个窗口可以设置一些用户首选项,例如我的应用程序的背景色。我希望能够显示一个包含所有系统字体的选择框,这可能吗?

更新

我的应用程序将是跨平台的,因此,如果可能,我需要一个跨平台的解决方案

javascript css fonts node.js electron

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

选择具有给定 id 的元素的更快方法

我有个问题。假设我们有以下 html 标签:

<div id='foo'>I am a div</div>
Run Code Online (Sandbox Code Playgroud)

?他的 div 存在于 dom 上(它不是由 javascript 生成的)

如果我想在 javascript 中多次使用这个 div,这是更好的方法吗?

  • 将其存储在这样的变量中:

    var d = $("#foo")

  • 还是每次都用 jquery 调用它?: $("#foo").methodName()

哪种方法涉及较少的dom遍历?

html javascript jquery dom dom-traversal

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

不接受数字的模式属性

我正在尝试学习正则表达式并使用pattern属性将其应用于我的表单。我有一个表格,要求输入电子邮件、名字、姓氏和密码。我想要做的是防止姓氏和名字包含数字。所以这是我的代码:

<form action="foo.php" method="post">
    <label for="email">Email</label>
    <input type="email" required class="form-control" id='email-input'>
    <label for="firstName">First Name</label>
    <input type="text" name="firstName" required class="form-control" id='first-name-input' pattern="[^0-9]" title="First name cannot contains any digits">
    <label for="lastName">Last Name</label>
    <input type="text" name="lastName" required class="form-control" id='last-name-input' pattern="[^0-9]" title="Last name cannot contains any digits">
    <label for="password">Password</label>
    <input type="password" required class="form-control" id='password-input'>
    <input type='submit' class='btn btn-success pull-right' value='Complete registration' style="margin-top:0.3em">
</form>
Run Code Online (Sandbox Code Playgroud)

但是,即使我没有在名字和姓氏输入中输入任何数字(只填写真实姓名),我也会填写我的所有输入内容,我收到一条错误消息:请匹配请求的格式。我想要一个解释。为了更好地理解我想在这里做的事情,举个例子:

如果输入为first-namefoo 它不会抛出错误。

如果输入是 foo1 或 1 或 1foo 它将抛出错误

html javascript regex validation

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

Node API 抛出它自己的错误消息而不是自己的错误消息

我正在尝试为 编写以下函数NAPI

int addon::fakeAdd(int a, int b)
{
    return a + b;
}
Napi::Number addon::addWrapped(const Napi::CallbackInfo &info)
{

    Napi::Env env = info.Env();
    if (info.Length() < 2 || !info[0].IsNumber() || !info[1].IsNumber())
    {

        auto x = Napi::TypeError::New(env, "You did not provide 2 numbers");
        x.ThrowAsJavaScriptException();
    }

    Napi::Number num1 = info[0].As<Napi::Number>();
    Napi::Number num2 = info[1].As<Napi::Number>();
    int returnValue = addon::fakeAdd(num1.Int32Value(), num2.Int32Value());
    return Number::New(env, returnValue);
}
Run Code Online (Sandbox Code Playgroud)

我将此函数导出为add. 当我使用参数(例如)从 javascript 调用它时,addon.add(1,2)一切都像魅力一样工作,我得到了正确的结果,即 3。现在我想处理用户没有向我的函数提供任何参数或(一个或两个)的情况参数不是数字。在这种情况下,我想抛出一条自定义消息(“您没有提供 2 个数字”)。但是,当我尝试在没有任何参数的情况下从 JavaScript 调用我的方法时,出现以下错误:

console.log(addon.add());
                  ^

Error: A number …
Run Code Online (Sandbox Code Playgroud)

c++ node.js node.js-addon

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