Node.js 如何解决这些网页错误?I';我正在制作一个服装应用程序,我需要创建一个下拉列表和一个CSV输入文本框
在此处输入图像描述ack.imgur.com/9cCWZ.png gur.com/X4DXW.png 我认为我得到这些错误的原因是因为我导出它们的方式。我想在屏幕上显示一个下拉列表和一个CSV文本用户输入框。在我正在开发的另一个功能上,我遇到了几乎相同的问题Node.js 如何解决这些网页错误?I';我正在制作一个服装应用程序,我需要创建一个下拉列表和一个CSV输入文本框,node.js,reactjs,Node.js,Reactjs,在此处输入图像描述ack.imgur.com/9cCWZ.png gur.com/X4DXW.png 我认为我得到这些错误的原因是因为我导出它们的方式。我想在屏幕上显示一个下拉列表和一个CSV文本用户输入框。在我正在开发的另一个功能上,我遇到了几乎相同的问题 import React, { useState } from 'react'; import App from '../App'; import { onClickOutside } from 'react'; import { Tex
import React, { useState } from 'react';
import App from '../App';
import { onClickOutside } from 'react';
import { TextInput } from 'react';
import { handleOnClick } from 'react';
import { isItemInSelection } from 'react';
const KeywordEditor = () => <header title="KeywordEditor"/>;
function Dropdown({ title, items=[], multiSelect = false}) {
const [open, setOpen] =useState(false);
const [selection, setSelection] = useState([]);
const toggle = () => setOpen(!open);
Dropdown.handleClickOutside = () => setOpen(false);
function handleOnClick(item) {
if (!selection.some(curent => curent.id === item.id)) {
if (!multiSelect) {
setSelection([item]);
} else if (multiSelect) {
setSelection([...selection, item]);
}
} else {
let selectionAfterRemoval = Selection;
selectionAfterRemoval = selectionAfterRemoval.filter(
current => current.id /= item.id
);
setSelection([...selectionAfterRemoval]);
}
}
function isItemInSelection(item) {
if (selection.some(current => current.id === item.id)) {
return true;
}
return false;
}
return (
<div className="dd-wraper">
<div
tabIndex={0}
className="dd-header"
role="button"
onKeyPress={() => toggle()}
onClick={() => toggle(!open)}>
<div className="dd-header_title">
<p className="dd-header_title--bold">{title}</p>
</div>
<div className="dd-header_action">
<p>{open ? 'Close' : 'Open'}</p>
</div>
</div>
{open && (
<ul className="dd-list">
{items.map(item => (
<li className="dd-list-item" key={item.id}>
<button type="button" onClick={() => handleOnClick(item)}>
<span>{item.value}</span>
<span>{isItemInSelection(item) && 'selected'}</span>
</button>
</li>
))}
</ul>
)}
</div>
);
};
const Keyword = () => {
const [value, onChangeText] = React.useState('Keyword');
return (
<TextInput
style={{ height: 40, borderColor: 'gray', borderWidth: 1 }}
onChangeText={text => onChangeText(text)}
value={value}
/>
);
}
const clickOutsideConfig = {
handleClickOutside: () => Dropdown.handleClickOutside,
};
export default onClickOutside(KeywordEditor, App, Keyword, Dropdown, handleOnClick, isItemInSelection, clickOutsideConfig);
import React,{useState}来自“React”;
从“../App”导入应用程序;
从“react”导入{onClickOutside};
从“react”导入{TextInput};
从“react”导入{handleOnClick};
从“react”导入{isItemInSelection};
常量关键字编辑器=()=>;
函数下拉列表({title,items=[],multiSelect=false}){
const[open,setOpen]=useState(false);
const[selection,setSelection]=useState([]);
常量切换=()=>setOpen(!open);
Dropdown.handleClickOutside=()=>setOpen(false);
功能单击(项目){
如果(!selection.some(curent=>curent.id==item.id)){
如果(!multiSelect){
选举([项目]);
}else if(多选){
设置选择([…选择,项目]);
}
}否则{
让selectionafterremove=选择;
selectionafterremovation=selectionafterremovation.filter(
当前=>current.id/=item.id
);
设置选择([…删除后选择]);
}
}
功能isItemInSelection(项目){
if(selection.some(current=>current.id==item.id)){
返回true;
}
返回false;
}
返回(
切换()}
onClick={()=>切换(!open)}>
{title}
{打开?'Close':'open'}
{打开&&(
{items.map(item=>(
-
点击(项目)}>
{item.value}
{isItemInSelection(项目)&&“selected”}
))}
)}
);
};
常量关键字=()=>{
const[value,onChangeText]=React.useState('Keyword');
返回(
onChangeText(文本)}
value={value}
/>
);
}
常量ClickOutside配置={
handleClickOutside:()=>下拉列表。handleClickOutside,
};
导出默认OnClickOut(关键字编辑器、应用程序、关键字、下拉列表、handleOnClick、isItemInSelection、clickOutsideConfig);