小编Wil*_*lly的帖子

输入“字符串|” boolean' 不能分配给类型 'never'。类型“string”不可分配给类型“never”

interface modal {
    name: string;
    check: boolean;
}

type Key = "name" | "check";

const obj: modal = fn();

function fn():any {
    return {
        name: "hello"
    }
}

class Modal {
    name: string;
    check: boolean;
    constructor() {
        this.name = "";
        this.check = false;
        Object.keys(obj).forEach((key: string) => {
            this[key as keyof modal] = obj[key as keyof modal];
        })
    }
}
Run Code Online (Sandbox Code Playgroud)

我在此处收到错误[key as keyof modal]

错误消息:输入“字符串|” boolean' 不能分配给类型 'never'。类型“string”不可分配给类型“never”。 在此输入图像描述

typescript

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

$(element)[index].addClass(); 不起作用

我有多个具有相同类的元素。当我在下面使用此方法时,它不起作用。

$(".tab-content")[index].addClass("active-content");
Run Code Online (Sandbox Code Playgroud)

我的代码:

HTML:

<div class="container">
    <div class="content">
        <ul class="tag">
            <li>
                <a href="javascript:;">
                    Lodon
                </a>
            </li>
            <li>
                <a href="javascript:;">
                    Paris
                </a>
            </li>
            <li>
                <a href="javascript:;">
                    Tokyo
                </a>
            </li>
        </ul>
        <div class="tab-content">
            <h3>Lodon</h3>
            <p>London is the capital of England</p>
        </div>
        <div class="tab-content">
            <h3>Paris</h3>
            <p>Paris is the capital of France</p>
        </div>
        <div class="tab-content">
            <h3>Tokyo</h3>
            <p>Tokyo is the capital of Japan</p>
        </div>
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

和JS

$(".tag li").click(function () {
    var index = $(this).index();
    $(".tab-content")[index].addClass("active-content");
});
Run Code Online (Sandbox Code Playgroud)

https://codepen.io/WillyIsCoding/pen/KoMxMJ

javascript jquery

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

React 如何更新 ref?

import React, { useState, useEffect, useRef } from "react";
import ReactDOM from "react-dom";

import "./styles.css";

function App() {
  const [minus, setMinus] = useState(1);
  const ref = useRef(null);

  const handleClick = () => {
    setMinus(minus - 1);
  };

  console.log("-->", ref.current, minus);

  useEffect(() => {
    console.log(`denp[minus]>`, ref.current);
  }, [minus]);

  return (
    <div className="App">
      {(minus >= 0 || minus <= -5) && <h1 ref={ref}>num: {minus}</h1>}
      <button onClick={handleClick}>minus</button>
    </div>
  );
}

export default App;

Run Code Online (Sandbox Code Playgroud)

在官方文档中,它说“每当该节点发生变化时,React 都会将其 .current 属性设置为相应的 DOM 节点。”

所以在 React 渲染 DOM …

reactjs use-ref

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

标签 统计

javascript ×1

jquery ×1

reactjs ×1

typescript ×1

use-ref ×1