小编jor*_*mer的帖子

VSCode 自动导入 - 如何强制 Material-UI 全路径导入

当使用 VSCode 的自动导入功能导入 Material-UI 组件时,它将使用命名导入从顶级文件导入:

import { Button } from "@material-ui/core"
Run Code Online (Sandbox Code Playgroud)

但是,我希望自动导入使用完整路径导入

import Button from "@material-ui/core/Button
Run Code Online (Sandbox Code Playgroud)

我试图找到一种方法来配置 VSCode 的自动导入来执行此操作,但无济于事。

有谁知道这是否可能/如何配置?

javascript reactjs visual-studio-code material-ui

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

useRef Typescript 错误:“HTMLElement”类型上不存在属性“current”

我正在用 React 和 Typescript 制作一个 Datepicker,我似乎无法克服useRefref 和 ref.current属性的错误。div当在文档外部单击文档时,我试图让我将引用分配给关闭。

我似乎无法弄清楚我做错了什么。这是我的代码:

function Datepicker({label, placeholder}: DatepickerProps){
  const [open, setOpen] = React.useState(false)
  const [day, setDay] = React.useState(0)
  const [month, setMonth] = React.useState(new Date().getMonth())
  const [year, setYear] = React.useState(new Date().getFullYear())
  const picker = React.useRef(null) as HTMLElement | null

  React.useEffect(() => {
    document.addEventListener("mousedown", toggle)
    return () => {
      document.removeEventListener("mousedown", toggle)
    };
  }, []);

  const toggle = (e: MouseEvent) => {
    if (picker && picker.current){
      if (picker.current.contains(e.target) === false){
        setOpen(false)
      } …
Run Code Online (Sandbox Code Playgroud)

javascript typescript reactjs visual-studio-code react-hooks

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

不同类型数组的变量的展开运算符返回这些类型的联合数组

在 Typescript 中,当传播 类型的变量时number[] | string[] | boolean[],结果变量的类型为(number | string | boolean)[]

const a: number[] | string[] | boolean[] = [];

const b = [...a] //Type of b is now (number | string | boolean)[];
Run Code Online (Sandbox Code Playgroud)

TS游乐场

这出乎我的意料。我本以为 的类型bnumber[] | string[] | boolean[]. 有人知道为什么会出现这种情况吗?

types typescript

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

Typescript 可选链接与三元运算符解析错误相结合

我在将 Typescript 可选链接与 React 组件内的三元运算符结合使用时遇到问题。我不确定它是否无法完成,我的语法已关闭,或者它是一个 Typescript bug。

请注意,在我的特定情况下,我需要使用括号表示法来访问对象的键,而在我给您的示例中,技术上不需要。

没有可选链:

import * as React from "react"

const Component: React.FC<{}> = () => {
  const test = {
    key1: {
      key2: Math.random() === 0 ? null : {
        key3: "3"
      }
    }
  }

  return(
    <div>
      {test["key1"]["key2"]["key3"] ? "Key3 Exists" : "Key3 Doesn't Exist" } {*/ Error: Object test["key1"]["key2"] is possibly null. */}
    </div>
  )
}
Run Code Online (Sandbox Code Playgroud)

具有可选的链接

import * as React from "react"

const Component: React.FC<{}> = () => {
  const …
Run Code Online (Sandbox Code Playgroud)

javascript typescript reactjs

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