小编and*_*541的帖子

节点 EADDRINUSE:使用 jest 和 supertest 进行测试时,地址已在使用 :::3000

我正在尝试使用 jest 和 supertest 测试我的 API 端点:

我的测试路线文件:

const app = require('../../index') 
const request = require('supertest')


describe('test app endpoints', ()=>{
    test('index should return 200 code', async (done) =>{
        const response = await request(app).get('/')
        expect(response.statusCode).toBe(200)
        done()
    })
Run Code Online (Sandbox Code Playgroud)

索引.js:

const express = require('express')
const bodyParser = require('body-parser')
const app = express()

const port = 3000


app.set('view engine', 'ejs')
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({
    extended: true
}));

app.use('/', require('./routes/conversions'))

module.exports = app.listen(port, (err) => {
    if (err) throw err
    console.log(`Server is running on port ${port}`)
}) …
Run Code Online (Sandbox Code Playgroud)

javascript node.js supertest jestjs

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

javascript更改数组中的元素

我有一个对象数组.然后我想添加另一个对象并将其粘贴到我的数组中已经存在的对象中.这意味着新对象的索引应该比我已经存在的对象大1,并且元素索引的其余部分应该加1.

例如:

  1. 我有6个元素的数组
  2. 我的新对象坚持索引= 2的现有对象
  3. 新对象进入一个索引= 3的数组,所有索引先前大于2的对象现在得到一个更高的位置

我试图将我的数组拆分为两个从index = 2开始,推送我的新元素,然后再次加入,但我的代码不能正常工作.

for (var i in myArray) {
  if (myArray[i].name === inheritedRate.inherit) {
    var tempArr = [];
    for (var n = i; n < myArray.length; n++) {
      tempArr.push($scope.myArray[n]);
      myArray.splice(n, 1);
    }
    myArray.push(inheritedRate);
    myArray.concat(tempArr);
  }
}
Run Code Online (Sandbox Code Playgroud)

换句话说,我有一个看起来像这样的数组:

myArray = [
  {name: "not selected"},
  {name: "not selected"},
  {name: "selected"},
  {name: "not selected"},
  {name: "not selected"},
  {name: "not selected"},
]
Run Code Online (Sandbox Code Playgroud)

我想在那里放一个外部元素来使它看起来像这样:

myArray = [
  {name: "not selected"},
  {name: "not selected"},
  {name: "selected"},
  {name: "new element"}, …
Run Code Online (Sandbox Code Playgroud)

javascript arrays algorithm

6
推荐指数
2
解决办法
247
查看次数

Android Studio:无法初始化编辑器

我是 Android Studio 技术的新手。我刚刚在 Windows 10 机器上从头启动了一个新的空项目。起初,在我的 activity_main.xml 文件中,我可以看到一个错误“编辑器在下一个 gradle 同步之前不可用”。单击“Synch Project with Gradle Files”后,错误消息变为“Failed to initialize editor”,如下图所示:

在此处输入图片说明

如您所见,构建控制台没有显示任何错误。顶部栏上的绿色箭头也被静音。我该如何解决这个问题?

Android Studio 版本:4.02 JDK 版本:1.8.0_261

注意我的计算机上安装了 Avast Antivirus。我不确定它是否会改变任何东西,但在一些类似的主题中,人们将此程序报告为干扰 Android Studio 的问题。然而,我的 avast 隔离区仍然是空的。

更新/解决方案就我而言,事实证明将我的 Android Studio 从 4.0.2 降级到 3.5.3 版本解决了这个问题。现在一切正常。

java android android-studio

6
推荐指数
2
解决办法
6643
查看次数

Node JS mysql用数组数组删除多行

我需要创建一个能够从我的表中删除多行的查询.为了做到这一点,我在数组中创建了一个数组,其中的值需要传递给该查询.这是我的代码:

var deleteRooms = [ [ 3, 23 ], [ 4, 23 ], [ 5, 23 ], [ 2, 23 ]];

connection.query("DELETE FROM rate_plans_rooms WHERE room_id = ? AND rate_plan_id = ? ",
[deleteRooms],function(err,results){
 if(err){return console.log(err)}

 else
 {                                          
    console.log('sended');
 }

});
Run Code Online (Sandbox Code Playgroud)

但每次我收到这样的错误:

{ Error: ER_PARSE_ERROR: You have an error in your SQL syntax; check
 the manual that corresponds to your MariaDB server version for the
 right syntax to use near ' (4, 23), (5, 23), (2, 23) AND rate_plan_id
 = …
Run Code Online (Sandbox Code Playgroud)

mysql node.js

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

Google Cloud:一段时间后如何从个人帐户类型切换到公司帐户类型?

我想在 Google Cloud Platform 上发布我的网站。最初它是非商业项目,所以我选择了个人帐户类型。但是后来我想让它完全商业化并建立我自己的与该网站相关的公司。

以后如何轻松地将我的帐户类型从个人更改为公司?

google-app-engine google-cloud-platform

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

如何观看整个对象?

我有一个十个对象的数组.它们中的每一个都包含六个属性并在视图中显示所有内容.用户可以通过在输入上键入新数据来更改属性.如何查看整个数组并确定哪个对象已更改的属性,并且不重复我的代码10次以分别观察每个对象?

javascript angularjs

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