简体   繁体   English

searchChange 未定义 no-undef

[英]searchChange is not defined no-undef

SearchBox.js File is: SearchBox.js 文件是:

import React from 'react';

const SearchBox = ({ searchfield, searchChanger}) => {
return (
    <div className='pa2'>
        <input 
            className='pa3 b--green bg-light-blue'
            type='search'
            placeholder='search robots'
            onChange={searchChange}
        />
    </div>
);
}

export default SearchBox;

App.js File is: App.js 文件是:

import React, { Component } from 'react';
import CardList from './CardList';
import SearchBox from './SearchBox';
import { robots } from './robots';
import './App.css';
class App extends Component {
    constructor() {
        super()
        this.state = {
            robots: robots,
            searchfield:''
        }
    }

    componentDidMount() {
        fetch('https://jsonplaceholder.typicode.com/users')
            .then(response => response.json())
            .then(users => {this.setState({ robots: robots})});

    }

    onSearchChange = (event) => {
        this.setState({ searchfield: event.target.value })
    }

    render() {
        const filteredRobots = this.state.robots.filter(robots => {
           return  robots.name.toLowerCase().includes(this.state.searchfield.toLowerCase());
        })
        if (robots.length ===0) {
        return <h1>Loading</h1>
       }
        else {
          return (  
              <div className='tc'>
                    <h1 className='f1'>RoboFriends</h1>
                    <SearchBox searchChange={this.onSearchChange}/>
                    <CardList robots={filteredRobots} />
              </div>
            );
        }
    }   
}


export default App;

I was able to get rid of this error just by changing the order of import in App.js file, but later on its showing this error no matter what i do?我可以通过更改 App.js 文件中的导入顺序来摆脱这个错误,但后来无论我做什么都会显示这个错误? please help in case I have any typing issue, if no then what is the problem如果我有任何打字问题,请帮忙,如果没有,那是什么问题

Your SearchBox should be:你的搜索框应该是:


const SearchBox = ({ searchfield, searchChange}) => {
return (
    <div className='pa2'>
        <input 
            className='pa3 b--green bg-light-blue'
            type='search'
            placeholder='search robots'
            onChange={searchChange}
        />
    </div>
);
}

export default SearchBox;

In your props there was searchChanger which is incorrect.在您的道具中有不正确的 searchChanger。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM