小编Rez*_*eza的帖子

如何使用“未知原因”调试Websocket连接错误

最近,我在chrome控制台上收到以下消息;

WebSocket connection to 'ws://evo15:4008/?stream' failed: Unknown reason
Run Code Online (Sandbox Code Playgroud)

它变得越来越多,并且以某种方式令人讨厌,我必须每次打开一个新选项卡或重新启动chrome才能恢复正常的websocket连接。我该如何调试?不幸的是,我还不能复制它。我的Chrome版本是Version 77.0.3865.75 (Official Build) (64-bit)

更新1:我认为您可以通过从服务器端关闭连接很长时间(我不知道确切时间),然后打开它并尝试连接它(客户端尝试每1秒连接一次)来重现它。然后它将发生。所以我猜有一个过期时间或尝试连接某处的次数有限。

更新2:尝试256次重新连接后发生。

WebSocket connection to 'ws://evo15:4008/?stream' failed: Error in connection establishment: net::ERR_CONNECTION_REFUSED
Run Code Online (Sandbox Code Playgroud)

在控制台上看到255错误后,您将看到第一个错误,并且无法重新连接。所以我认为我缺少某处的8位限制

在此处输入图片说明

javascript google-chrome websocket

22
推荐指数
2
解决办法
3092
查看次数

Visual Studio Code 中的选项卡自动完成不起作用

我正在尝试通过按下“Tab”按钮来启用选项卡自动完成,但它对我不起作用,并且当它应该作为自动完成工作时,它总是作为 Tab 字符工作。我应该启用或禁用哪个设置或快捷方式才能拥有此功能?

标签自动完成 1

按“Tab”,我会得到这个;

标签自动完成 2

PS:按“Enter”工作正常并接受建议,我可以通过将以下设置设置为关闭来禁用它。

在此处输入图片说明

editor visual-studio-code

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

ESLint 规则与 Prettier 规则冲突

我对 VSCode 完全陌生,这是我的第一个设置。我知道这是一个非常常见的问题,但我找不到合适的解决方案。

这是我到目前为止的理解。如果我错了,请纠正我。

我想使用 ESLint 来查找 Javascript 代码中的错误,并使用 Prettier 来格式化所有语言。但似乎我们也可以使用 ESLint 格式化我们的 javascript 代码!我喜欢使用一些有用的规则,但 Prettier 似乎没有(括号中的空格)之类的规则。

所以我决定使用 ESLint 作为 Javascript 中的格式化程序。现在我看到网上有很多关于“如何将 ESLint 与 Prettier 集成”的教程。这个想法是使用插件扩展 Prettier 规则并向其中添加那些 ESLint 特定规则。合理的!

我最终得到了以下设置。请看下面我使用 ESLint 和 Prettier 的设置:

.eslintrc.js

module.exports = {
    env: {
        browser: true,
        es6: true,
    },
    extends: ["prettier"],
    globals: {
        Atomics: "readonly",
        SharedArrayBuffer: "readonly",
    },
    parserOptions: {
        ecmaVersion: 2018,
        sourceType: "module",
    },
    plugins: [
        "prettier"
    ],
    "rules": {
        "space-in-parens": ["error", "always"],
        "quotes": ["error", "single"],
        "prettier/prettier": "error"
    }
};
Run Code Online (Sandbox Code Playgroud)

VSCode 的 …

visual-studio-code prettier eslintrc prettier-eslint

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

Firefox 中是否存在与 Chrome 标志“不安全来源视为安全”等效的内容?

Insecure origins treated as secure在 Chrome 中使用“”标志用于开发目的,并且我添加了一些网站,例如http://myWebsite:port. 它在 Chrome 中运行得很好。现在我需要在 Firefox 中使用相同的功能,但找不到它。在 Firefox 中可以这样做吗?

firefox google-chrome secure-context

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

在Visual Studio 2015中使用v120 Platform Toolset

我在Windows 10中使用Visual Studio 2015(Update 3).我有一个由多个项目组成的解决方案.其中一个项目必须使用平台工具集Visual Studio 2013(v120)构建.不幸的是,它没有安装在我的机器上.我知道如何更改项目的平台工具集或重新定位解决方案,但我不想这样做.我想为Visual Studion 2015安装Visual Studio 2013平台工具集(v120).到目前为止,我发现的唯一方法是安装除2015版之外的整个Visual Studio 2013,这不是一个好的解决方案.

我已尝试过针对此问题的不同解决方案,例如单独安装v120构建工具并查看此链接.但它对我不起作用.除安装Visual Studio 2013之外的任何解决方案都是受欢迎的.

msbuild visual-studio

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

如何将现有的 cmake 项目添加到 Visual Studio 解决方案

我正在使用 Visual Studio 2017,我有一个解决方案,主要由几个 C++ 项目组成。现在我想添加一个现有的 C++ 项目,该项目使用 CMake 来构建我在 Visual Studio 中的解决方案,并将它与解决方案中的其他项目一起构建。有可能这样做吗?仅供参考,我可以在 Visual Studio 中单独构建 cmake 项目。

solution cmake visual-studio visual-studio-2017

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

在 JavaScript 中向 Map 添加键/值对的不同方法

根据 MDN set Method for Map,在 javascript 中向地图添加键/值对的唯一方法是set方法。我想知道当我们添加带有方括号的键/值对时,映射的行为是什么,如下所示;

const testMap = new Map();
testMap.set( 1,"firstValue" );
testMap[2] = "secondValue";
console.log( testMap );
console.log( testMap[ 2 ] );
console.log( testMap[ '2' ] );
Run Code Online (Sandbox Code Playgroud)

看来我们可以同时拥有地图和物体!有人可以向我解释一下吗?我知道 Map 是一种对象,但这种行为可能会导致很多错误。有什么办法可以防止这种情况发生吗?顺便说一句,如果您添加带有方括号的键/值对,则无法使用get方法检索它。

javascript object

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

如何在wxWidgets中创建与Window(操作系统)控制按钮完全相同的控制按钮?

我想创建像 Windows 一样的控制按钮(最小化、最大化和关闭)。

最终目标是创建类似 Microsoft Word 标题栏的东西。

在此输入图像描述

我知道如何创建 wxButton,也知道如何为其设置图标。但是我不知道如何使用本机操作系统图标或主题。

wxButton* closeButton = new wxButton(this, wxID_ANY, "x"); // how to tell that be like OS close button!
Run Code Online (Sandbox Code Playgroud)

在 WinAPI 中,有一个名为DrawThemeBackground的函数,我可以使用它WP_CLOSEBUTTON,但我不知道 wxWidgets 中的等效函数是什么。

更新:在大家的帮助下,这是在 Windows 中绘制本机按钮的示例代码(不适用于其他操作系统)。不幸的是,结果不是我想要的。它看起来像 Win XP 图标。看来wxNativeRenderer 不能正常工作。有人知道修复这段代码吗?(是的,我添加了“wx.rc”资源文件,并且不使用任何清单)

在此输入图像描述

// wxWidgets "Hello World" Program
// For compilers that support precompilation, includes "wx/wx.h".
#include <wx/wxprec.h>
#ifndef WX_PRECOMP
#include <wx/wx.h>
#endif
#include <wx/renderer.h>
#include <wx/artprov.h>
class MyApp: public wxApp
{
public:
  virtual bool OnInit();
};

class MyFrame: public wxFrame …
Run Code Online (Sandbox Code Playgroud)

c++ winapi wxwidgets

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

为什么 wxDC::GetTextExtent() 对于 wxWidgets 中的高 DPI 显示返回相同的值?

我正在尝试使用 wxWidgets 扩展用 c++ 编写的应用程序以实现高 DPI 显示。我遵循官方链接中的指南。到目前为止,除了wxDC::GetTextExtent()函数的返回值之外,一切都工作正常。当我将窗口移动到具有不同 DPI 的显示器时,字体大小会缩放,但 wxDC 的返回值保持与以前相同。但是,如果我使用wxWindow::GetTextExtent(),它会返回正确的值!在文档中,它说所有 wxWidgets API 都使用逻辑像素,但看起来并非如此。

换句话说,如果您尝试在高 DPI 显示器的设备上下文 (dc) 上绘制“文本”,则绘制的文本会很小,因为 wxDC 测量的字体高度值很小(例如不缩放)。然而,wxWindow 绘制的所有其他文本都可以正确缩放。

这种行为是故意的吗?我应该怎么做才能获得正确的值?我正在使用 wxWidgets 3.1.5 和 Win 10。

另外还不清楚 wxWidgets 是使用设备独立像素(DIP)还是逻辑像素?

c++ wxwidgets

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

如何更改cmake缓存和构建文件目录

我有一个Linux项目,它的构建工具是CMake版本3.5.当我输入"cmake"时.在我的项目文件夹中的命令,cmake自动在我的项目文件夹中创建一个文件夹"CmakeFiles"和其他几个缓存文件.我想在我的项目文件夹中创建另一个名为"cache"的文件夹,并将所有cmake缓存文件放入其中.如何在"CMakeList.txt"文件中明确地执行此操作?我搜索堆栈和其他资源,但无法找到任何解决方案.仅供参考,在CLion IDE中,这非常简单.您可以更改缓存和构建文件路径,如下所示;

在此输入图像描述

linux cmake

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

如何将对象的方法作为参数传递给Javascript中的另一个函数

首先来看看下面的简单代码:

function mySecondFunction(objArray,setFunc)
{
    for (let i = 0; i < objArray.length; i++)
    {
        objArray[i].info.setTop(72);
    }
}

function myFunction()
{
    let myObjArray = [];
    for (let i = 0; i < 10; i++)
    {
    myObjArray.push({
        info:{topVar:0,
          bottomVar:0,
          get top() {return this.topVar;},
          get bottom() {return this.bottomVar;},
          setTop: function(input) {this.topVar = input;},
          setBottom: function(input) {this.bottomVar = input; }
         }
    });
    }
    mySecondFunction(myObjArray); // This works Fine
    mySecondFunction(myObjArray,setTop); // I want something like this!!!
}
Run Code Online (Sandbox Code Playgroud)

如您所见,我想将对象的方法传递给另一个函数.我知道很多可能的解决方案来避免这种情况,但我想知道它是否可能.

javascript callback

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