我对核心数据非常了解.我想用sprite kit游戏来使用它,但是我没有看到通常选项来检查它就像我使用通用xcode项目一样.它仍然可以使用吗?如果是这样,我必须采取哪些步骤来配置它?
我对React.forwardRef. 正如其文档中所解释的,我知道它的主要用途是让父组件访问子组件的DOM元素。但我已经可以做到这一点,甚至不必使用它。
这是一个代码示例,您可以将其插入 CodeSandbox 并查看它是否有效:
import React, {useRef, useEffect} from "react";
import "./styles.css";
const ChildComponent = (props) => {
useEffect( ()=> {
props.callbackFunction()
})
return(
<div ref={props.fRef}>
{"hello"}
</div>
)
}
export default function App() {
const callbackFunction = () => {
console.log("The parent is now holding the forwarded ref to the child div: ")
console.log(forwardedRef)
}
const forwardedRef = useRef(null)
return (
<div className="App">
<h1>Hello CodeSandbox</h1>
<ChildComponent name="gravy" callbackFunction={callbackFunction} fRef={forwardedRef}/> …Run Code Online (Sandbox Code Playgroud) 下面的代码段有四个框。目的是这些框的顺序将被打乱,并在它们转到新位置时发生过渡动画。每个框的键对应于 useState 中源数组的颜色值。每次通过 shuffle 按钮更新时,源数组的值都会被打乱。然后我在返回函数中映射数组。我为每个框设置了 2 个 classNames。一个类名与索引对应,用于定位。另一个类名对应于源数组值,并且始终与该框的键一致。
我的问题是,react 似乎随机决定要注意和协调哪些键,以及忽略哪些键并重新安装这些元素。您可以在这里看到,一些元素正确过渡,而其他元素只是跳转到它们的目标位置。我不知道为什么会发生这种情况。有人可以帮忙吗?
编辑:我不认为这是不需要重新安装的协调问题。React 正确地尊重了密钥,而不是重新安装任何密钥。所以问题在于 React 如何处理更新期间添加的 CSS 转换类。有些过渡有效,有些则无效。这可能只是引擎的限制,但如果有人有任何进一步的煽动,请分享。
const {useState} = React;
function App() {
const [state, setState] = useState(['Red', 'Green', 'Blue', 'Black'])
function handleShuffle() {
const newState = _.shuffle(state)
setState(newState)
}
return (
<div className="App">
{state.map((sourceValue, index) => {
return (
<div className={
'box positionAt' + index + ' sourceValue' + sourceValue
}
key={sourceValue} ></div>
)
})}
<button id="shuffle" onClick={handleShuffle}> shuffle < /button>
</div>
);
}
const rootElement = …Run Code Online (Sandbox Code Playgroud)