Javascript 通过数组进行反应循环 import React,{useffect,useState}来自“React”; 导入“/styles.css”; 导出默认函数App(){ const[videoDevicesList,setVideoDevices]=useState([]); useffect(()=>{ //navigator.mediaDevices.enumerateDevices().then(gotDevices) 如果(真){ (异步()=>{ const devices=wait navigator.mediaDevices.enumerateDevices(); const videoInput=devices.filter( (设备)=>device.kind==“视频输入” ); 设置视频设备(视频输入); })(); } }, []); 返回( {JSON.stringify(视频设备列表)} 环 {VideoDeviceList.forEach((设备)=>( {device.groupId} ))} ); }
我有这个密码Javascript 通过数组进行反应循环 import React,{useffect,useState}来自“React”; 导入“/styles.css”; 导出默认函数App(){ const[videoDevicesList,setVideoDevices]=useState([]); useffect(()=>{ //navigator.mediaDevices.enumerateDevices().then(gotDevices) 如果(真){ (异步()=>{ const devices=wait navigator.mediaDevices.enumerateDevices(); const videoInput=devices.filter( (设备)=>device.kind==“视频输入” ); 设置视频设备(视频输入); })(); } }, []); 返回( {JSON.stringify(视频设备列表)} 环 {VideoDeviceList.forEach((设备)=>( {device.groupId} ))} ); },javascript,reactjs,dom,Javascript,Reactjs,Dom,我有这个密码{JSON.stringify(VideoDeviceList)}在UI中打印数组。 另外视频设备的类型列表重新运行对象 我想在数组中循环并打印groupId。 但这不起作用 如何修复此错误 任何帮助 提前感谢。=) 将您的forEach更改为map map返回一个新数组,在本例中是一个组件数组 forEach只对每个项目进行迭代,不返回任何内容 将您的forEach更改为map map返回一个新数组,在本例中是一个组件数组 forEach只对每个项目进行迭代,不返回任何内容 也许你
{JSON.stringify(VideoDeviceList)}
在UI中打印数组。
另外视频设备的类型列表
重新运行对象
我想在数组中循环
并打印groupId
。
但这不起作用
如何修复此错误
任何帮助
提前感谢。=)
将您的forEach
更改为map
map
返回一个新数组,在本例中是一个组件数组
forEach
只对每个项目进行迭代,不返回任何内容
将您的forEach
更改为map
map
返回一个新数组,在本例中是一个组件数组
forEach
只对每个项目进行迭代,不返回任何内容
也许你可以试试这种方法
import React, { useEffect, useState } from "react";
import "./styles.css";
export default function App() {
const [videoDevicesList, setVideoDevices] = useState([]);
useEffect(() => {
// navigator.mediaDevices.enumerateDevices().then(gotDevices)
if (true) {
(async () => {
const devices = await navigator.mediaDevices.enumerateDevices();
const videoInput = devices.filter(
(device) => device.kind === "videoinput"
);
setVideoDevices(videoInput);
})();
}
}, []);
return (
<div className="App">
{JSON.stringify(videoDevicesList)}
<h1>Loop</h1>
{videoDevicesList.forEach((device) => (
<div key={device.groupId}>{device.groupId}</div>
))}
</div>
);
}
import React,{useffect,useState,usemo}来自“React”;
导入“/styles.css”;
导出默认函数App(){
const[videoDevicesList,setVideoDevices]=useState([]);
useffect(()=>{
//navigator.mediaDevices.enumerateDevices().then(gotDevices)
如果(真){
(异步()=>{
const devices=wait navigator.mediaDevices.enumerateDevices();
const videoInput=devices.filter(
(设备)=>device.kind==“视频输入”
);
设置视频设备(视频输入);
})();
}
}, []);
constgroupids=useMemo(()=>{
让$groupIds=[];
VideoDeviceList.forEach((设备)=>{
$groupIds.push(
{device.groupId}
)
} )
返回$groupIds
},[视频设备列表])
返回(
{JSON.stringify(视频设备列表)}
{视频设备列表类型}
环
{groupIds}
);
也许你可以这样试试
import React, { useEffect, useState } from "react";
import "./styles.css";
export default function App() {
const [videoDevicesList, setVideoDevices] = useState([]);
useEffect(() => {
// navigator.mediaDevices.enumerateDevices().then(gotDevices)
if (true) {
(async () => {
const devices = await navigator.mediaDevices.enumerateDevices();
const videoInput = devices.filter(
(device) => device.kind === "videoinput"
);
setVideoDevices(videoInput);
})();
}
}, []);
return (
<div className="App">
{JSON.stringify(videoDevicesList)}
<h1>Loop</h1>
{videoDevicesList.forEach((device) => (
<div key={device.groupId}>{device.groupId}</div>
))}
</div>
);
}
import React,{useffect,useState,usemo}来自“React”;
导入“/styles.css”;
导出默认函数App(){
const[videoDevicesList,setVideoDevices]=useState([]);
useffect(()=>{
//navigator.mediaDevices.enumerateDevices().then(gotDevices)
如果(真){
(异步()=>{
const devices=wait navigator.mediaDevices.enumerateDevices();
const videoInput=devices.filter(
(设备)=>device.kind==“视频输入”
);
设置视频设备(视频输入);
})();
}
}, []);
constgroupids=useMemo(()=>{
让$groupIds=[];
VideoDeviceList.forEach((设备)=>{
$groupIds.push(
{device.groupId}
)
} )
返回$groupIds
},[视频设备列表])
返回(
{JSON.stringify(视频设备列表)}
{视频设备列表类型}
环
{groupIds}
);
将forEach更改为map。这是map和forEach之间的区别将forEach更改为map。这是map和forEach之间的区别