考虑以下代码,我x使用解构创建了一个“副本”,并删除了其中一个属性:
const x = { a: 1, b: 2, c: 3};
const { a, ...x2} = x;
console.log(x);
console.log(x2);
Run Code Online (Sandbox Code Playgroud)
如果我这样做,@typescript-eslint/no-unused-vars会认为这是一个未使用的错误a。
如何更改代码来修复错误,而不明确要求 eslint 忽略有问题的行,最好仍然使用解构语法?即我真的不想使用delete,也不想显式枚举所有其他属性,例如const x2 = {b: x.b, c: x.c }.
是否有一种奇特的语法或奇怪的 eslint 规则可以鱼与熊掌兼得?
const App = () => {
const [myMutation] = useMutation(gql`
mutation Test($updateUserId: ID!, $updateUserInput: UpdateUserInput!) {
updateUser(id: $updateUserId, input: $updateUserInput) {
id
firstname
age
}
}
`);
// Runs every time this component is rendered
console.log("rendered");
// Called when the button is clicked
const update = () => {
myMutation({
variables: {
updateUserId: 1,
updateUserInput: {
age: Math.round(Math.random() * 10 + 5) // Set a random age from 5 - 15
}
}
});
};
return (
<>
<h1>Update …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用 ReactDOM.createPortal,但 VSCode 中没有突出显示“ReactDOM”或“文档”,当将鼠标悬停在“document.getElementById('overlay-root')”上时,我收到此错误:
Argument of type 'HTMLElement | null' is not assignable to parameter of type 'Element'.
Type 'null' is not assignable to type 'Element'.
Run Code Online (Sandbox Code Playgroud)
这是代码:
import styles from './CartModal.module.css';
import ReactDOM from 'react-dom';
import Card from '../UI/Card/Card';
interface CartModalProps {
onClose?: () => void
}
const DisplayCartModal: React.FC<CartModalProps> = (props) => {
return ReactDOM.createPortal(
<>
<CartModal />
</>,
document.getElementById('overlay-root')
)
}
export default DisplayCartModal;
Run Code Online (Sandbox Code Playgroud)
我尝试将文件扩展名切换为 .js 以查看这是否是 TypeScript 错误,事实上,当我更改它(并删除了 TS 特定语法)时,所有内容都突出显示并且运行良好。它没有返回 null,而是返回了正确的 HTML 元素。非常感谢帮助!
目前,我正在使用 React,并且在 Strapi CMS 中的富文本中包含内容,这些内容在 Markdown 版本中按照我想要的方式间隔开,但是一旦我切换到预览或在浏览器中查看内容,空格就会消失离开。我尝试过添加<br/>标签,但仍然没有换行符。
这是我当前的代码:
\nimport ReactMarkdown from "react-markdown";\nimport rehypeRaw from "rehype-raw";\nexport\xc2\xa0default\xc2\xa0function\xc2\xa0name({\xc2\xa0posts })\xc2\xa0{\n\xc2\xa0\xc2\xa0return\xc2\xa0(\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0<>\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0<div>\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0{posts.Title}\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0</div>\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0<div>\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0<ReactMarkdown\xc2\xa0children={posts.Content}\xc2\xa0rehypePlugins={[rehypeRaw]}\xc2\xa0/>\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0</div>\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0</>\n\xc2\xa0\xc2\xa0);\n}\nRun Code Online (Sandbox Code Playgroud)\n 我正在开发一个 React 应用程序,我从一个基本上是 JSON 对象列表的路由中获取 JSON 响应。
现在我想根据该 JSON 对象中的另一个字段在每个 JSON 对象中添加一个字段:
这是我的回应:
{
messages: [
{
msgId: "2021082111010755885",
interfaceId: 5,
status: "QUEUED",
createdAt: "2021-08-21 11:01:07.89554",
modifiedAt: "2021-08-21 11:01:07.89554",
count: 0,
},
{
msgId: "2021082012204615964",
interfaceId: 5,
status: "QUEUED",
createdAt: "2021-08-20 12:20:46.187297",
modifiedAt: "2021-08-20 12:31:06.622",
count: 5,
},
{
msgId: "2021082012204575430",
interfaceId: 5,
status: "QUEUED",
createdAt: "2021-08-20 12:20:46.187297",
modifiedAt: "2021-08-20 12:27:06.473",
count: 3,
},
{
msgId: "2021082012204613152",
interfaceId: 5,
status: "QUEUED",
createdAt: "2021-08-20 12:20:46.187297",
modifiedAt: "2021-08-20 12:28:06.517",
count: 3,
}, …Run Code Online (Sandbox Code Playgroud) const boxes = {
height: 220,
width: 220,
backgroundColor: 'red',
borderRadius: '25%',
};
const main = {
display: 'grid',
gridTemplateColumns: 'auto auto auto',
gridGap: '20px',
justifyContent: 'center',
marginTop: '20px',
};
const box = document.querySelectorAll('.boxes');
console.log(box.length);
class Easy extends React.Component {
render() {
return (
<div className="easy-game">
<div className="Easy-main" style={main}>
<div style={boxes} className="boxes" />
<div style={boxes} className="boxes" />
<div style={boxes} className="boxes" />
</div>
</div>
);
}
}
export default Easy;
Run Code Online (Sandbox Code Playgroud)
这是我的代码,我的 .length 方法返回 0,而有 3 个 div 使用我在 React 中开始的同一个类,所以我可能在某个地方出错
reactjs ×5
javascript ×3
typescript ×2
apollo ×1
arrays ×1
eslint ×1
json ×1
react-dom ×1
strapi ×1