小编Tay*_*ley的帖子

在Node 4.3中使用Buffer.from时,TypeError Base64不是一个函数

我正在使用标准的亚马逊机器映像(linux x64)在Node 4.3上本地调试lambda函数

当我运行程序时,我在函数中得到一个错误,该函数用于将base64字符串解码为utf-8.错误说

Unhandled rejection TypeError: base64 is not a function
    at Function.from (native)
    at Function.from (native)
    at /home/ec2-user/sass-compiler/lib/compiler.module.js:26:30
Run Code Online (Sandbox Code Playgroud)

我的代码看起来很简单.我已经检查了SO和节点4.3文档,我的代码似乎是合规的.我有什么想法可能做错了吗?

template() {
        return new Promise((resolve, reject) => {
            let buf = Buffer.from(this._opts.tpl, 'base64').toString('utf-8');
            let _tpl = _.template(buf);
            resolve(_tpl(this._opts.opts));
        });
    }
Run Code Online (Sandbox Code Playgroud)

编辑该程序使用Node LTS 6.9.5在Windows 10上运行正常

javascript buffer node.js

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

了解git rebase和“黄金法则”

我在一个大型团队中工作,最近我们从TFS转到了Git。

我们已经有一些工作被覆盖的问题,并且认为这git pull --rebase是我们想要做的,因此与其直接合并,不如直接合并,它会在本地分支上重播拉出的提交。

但是,我们一直在阅读黄金法则,但仍不确定是否可以使用rebase。

我们的理解是,当您使用重定基向远程分支进行推送时,黄金法则就会发挥作用。来自https://medium.freecodecamp.org/git-rebase-and-the-golden-rule-explained-70715eccc372

您可能遇到了该规则,或者用了不同的措词。对于那些没有的人,这个规则很简单。永不,永不,永不重新建立共享分支的基础。共享分支是指位于远程存储库中的分支,您团队中的其他人可以拉。

所以这很糟糕:

  • Charles正在开发支持并用于git pull --rebase与远程同步
  • Taylor正在使用功能A,并用于git pull --rebase与远程同步
  • 查尔斯(Charles)用--rebase合并了对大师的支持,并管理了历史,泰勒(Taylor)的更改是在他尝试对大师进行正常合并时进行的。

没关系:

  • 查尔斯 pull origin support --rebase
  • 泰勒确实 pull origin feature-a --rebase
  • 两者都使用push到远程分支而不使用--rebase和合并到master

从本质上讲,我们不想--rebase在每次推送时都使用它,对吗?

git version-control

4
推荐指数
2
解决办法
899
查看次数

猫鼬的Pre-Save Hook正在触发,但未保存其他字段(不使用model.update)

我正在尝试在架构中实现一个计数器以获取下一个发行号。我已经在Mongoose中将其实现为钩子预保存钩子,并且一切看起来都很好……除了实际的“ number”字段没有更新。我可以很容易地告诉钩子是由登录到控制台的内容触发的,即使该字段似乎已被分配。但是,无论如何,“ number”字段都不会出现在结果中。

我已经看到了一些与猫鼬挂钩相关的问题,但是它们似乎都与我未使用的findOneAndUpdate之类有关。

这是我的完整模型,底部带有挂钩:

var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var Project = require('./projects.js');

var IssueSchema = new Schema({
    title: {type: String, required: true, trim: true,  index: true},
    number: {type: Number},
    description: {type: String, required: true},
    vote_up: {type: Number, default: 0},
    vote_down: {type: Number, default: 0},
    comments: [new Schema({
      _id: {type: Schema.ObjectId, ref: 'users'},
      description : {type: String},
      likes: {type: Number},
      date: {type: Date}
    })],
    attachments: [],
    fields: [new Schema({
      _id: {type: Schema.ObjectId, ref: 'fields'},
      value : …
Run Code Online (Sandbox Code Playgroud)

mongoose mongodb node.js

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

string.IsNullOrEmpty & string.IsNullOrWhiteSpace 为空字符串返回 false

我遇到了一个奇怪的案例,其中一段代码旨在从 MSFT Azure Phrase Breaker 处理一段文本后清除空白字符串、句号破折号等。我可以使用帮助找出如何调试问题。

以下代码块true在给定值时返回""。显然期望是方法应该false在第一条if语句之后返回。在要查看的 899 个短语中,似乎只有两个有这个问题。也发生在另一台机器上。

public static bool IsSentenceTranslatable(string sentence)
{
    string trimmedSentence = sentence.Trim();

    if (string.IsNullOrEmpty(trimmedSentence) || string.IsNullOrWhiteSpace(trimmedSentence))
    {
        return false;
    }

    switch (trimmedSentence)
    {
        case " ":
        case ".":
        case "-":
        case "·":
            return false;
    }

    return true;
}
Run Code Online (Sandbox Code Playgroud)

这是调试器的快照。

调试器快照

它可能是 Visual Studio 或 .NET 中的错误吗?我尝试使用各种可视化工具,但仍然看不到盒子里的任何东西。.NET 4.5 C# 7.3

.net c#

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

标签 统计

node.js ×2

.net ×1

buffer ×1

c# ×1

git ×1

javascript ×1

mongodb ×1

mongoose ×1

version-control ×1