小编cha*_*ham的帖子

禁用带有内联注释的 typescript-eslint 插件规则(no-explicit-any)

我有一个来自 @typescript-eslint 插件的 eslint 错误。

没想到。指定不同的 type.eslint(@typescript-eslint/no-explicit-any)

这是无隐含任何规则。仅在一个文件中,我想通过在文件顶部添加注释来禁用该规则。

如果我只是尝试标准的 eslint 禁用,编译器会抱怨:

/* eslint-disable  no-explicit-any */
Run Code Online (Sandbox Code Playgroud)

未找到规则“no-explicit-any”的定义。eslint(no-explicit-any)

我试图找到有关 TS 插件的内联规则的文档,但运气不佳。我也尝试过这样的各种组合:

/* typescript-eslint-disable no-implicit-any */
/* typescript-eslint: disable no-implicit-any */
/* typescript-eslint: disable noImplicitAny */
/* typescript-eslint-disable @typescript-eslint/no-implicit-any */
Run Code Online (Sandbox Code Playgroud)

没有 eslint 投诉,但错误不会消失。

如何禁用 typescript-eslint 规则?

eslint typescript-eslint

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

为什么我需要复制一个数组才能使用它的方法?

我可以使用Array()一个具有固定数量的未定义条目的数组.例如

Array(2); // [empty × 2] 
Run Code Online (Sandbox Code Playgroud)

但是,如果我去使用map方法,比如说,在我的新数组上,条目仍未定义:

Array(2).map( () => "foo");  // [empty × 2] 
Run Code Online (Sandbox Code Playgroud)

如果我复制数组,那么map确实有效:

[...Array(2)].map( () => "foo");  // ["foo", "foo"]
Run Code Online (Sandbox Code Playgroud)

为什么我需要副本才能使用该阵列?

javascript arrays

28
推荐指数
2
解决办法
2019
查看次数

你如何从javascript HTMLCollection中获取元素

我无法理解为什么我无法从HtmlCollection中获取元素.这个代码示例:

 var col = (document.getElementsByClassName("jcrop-holder"));
 console.log(col);
Run Code Online (Sandbox Code Playgroud)

在控制台上生成此输出:

在此输入图像描述

我正在尝试获取dic.jcrop-holder对象,但我无法从我的变量col获取它.这些都不起作用:

  console.log(col[0]); // undefined
  console.log(col.item(0)); // null

  // check length of collection

  console.log(col.length); // 0
Run Code Online (Sandbox Code Playgroud)

因此,如果长度为0,为什么控制台显示长度为1,以及内部的对象?当我打开节点时,它包含子节点.这是怎么回事?

这是一些扩展节点.我没有扩展div.jcrop.holder,因为它太长了.这是儿童元素:

在此输入图像描述

javascript

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

npm t 和 npm run test 之间的区别

我见过有些人npm t在运行测试时使用该命令。这个命令与运行有什么不同吗npm run test

javascript testing node.js

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

/// <reference types ="node"/>是什么意思?

我遇到了打字稿和节点的问题,偶然发现了一个修复程序(我得到了一个TS抱怨'过程'没有定义,如在Node中的process.env).我所要做的只是在我的文件顶部粘贴一行:

/// <reference types="node" />
Run Code Online (Sandbox Code Playgroud)

我不懂语法.打字稿编译器是否以某种方式阅读评论?这是如何运作的?

typescript typescript-typings

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

Jest 全局变量持续存在

我看到可以在 Jest 测试中指定全局变量,但是:

变异不会在其他测试文件的测试运行中持久化。

有没有办法对所有测试文件中持续存在的全局变量进行更改?

jestjs

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

Javascript 中 String() 和 new String() 的区别

在 JavaScript 中使用String()和有什么区别new String()

console.log(String('word')); // word

console.log(new String('word')); // word
Run Code Online (Sandbox Code Playgroud)

javascript string

11
推荐指数
3
解决办法
3428
查看次数

为什么有些数组方法依赖于全局Array对象?

我正在浏览数组上MDN文档,当我们想要测试一个对象是否是我们使用的数组时isArray().但是,它的使用与大多数其他方法非常不同.使用常规语法时会弹出一个错误:

console.log([1,2,3].isArray());  // TypeError: [1, 2, 3].isArray is not a function
Run Code Online (Sandbox Code Playgroud)

虽然这确实有效:

console.log(Array.isArray([1,2,3]))
Run Code Online (Sandbox Code Playgroud)

我不明白为什么isArray()(以及其他一些方法)依赖于某些全局对象而不是仅通过所讨论的对象可访问.为什么有些方法需要全局数组对象?

javascript arrays prototype

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

用于 css 表 (ButtonFace) 的 React 测试库 toHaveStyle

我通过 css 表将样式应用于按钮。当应用程序启动时,按钮只有一个 .Button 类。单击按钮时,.clicked会添加一个额外的类,然后修改按钮的样式。按钮文本也从“按钮”更改为“单击按钮”。

我希望 RTL​​ 查找这些样式更改(运行应用程序时很明显)。

按钮.css:

.Button {
    background-color: blueviolet;
}

.clicked {
    transform: scale(8.0);
    background-color: red;
}
Run Code Online (Sandbox Code Playgroud)

测试代码:

import React from 'react';
import { cleanup, render, fireEvent } from '@testing-library/react';
import '@testing-library/jest-dom/extend-expect';
import App from './App';


describe('clicking on the button', () => {

  afterAll(cleanup);

  let upDatedButton: HTMLElement;

  beforeAll(async () => {
    const { getByText, findByText } = render(<App />);
    const button = getByText('button');

    fireEvent(
      button,
      new MouseEvent('click', {
        bubbles: true,
        cancelable: true
      })
    ) …
Run Code Online (Sandbox Code Playgroud)

css react-testing-library

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

Jest 过时快照警告导致测试失败:退出 Jest 时忽略警告

我有一个已禁用的测试套件/文件。它有一个关联的快照文件。对于我的特殊情况,我不想删除或更新快照文件(长话短说:它在其他地方使用)。

因此,对于过时的快照,Jest 只注销一个警告,而不是一个失败。然而,Jest 然后以代码 1 退出,我的构建失败了。尽管实际上没有测试失败,但还是会发生这种情况。

我可以调整配置以忽略过时的快照吗?或者有没有其他方法让 Jest 在只发出警告后退出代码 0?

在此处输入图片说明

snapshot jestjs

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