title: ListView Is deleting Wrong Item
body: <p>I this is a possible duplicate question, but everything appears correct to me. My function does delete an item, but it deletes the wrong one. When I console.log to inspect the of array of objects,  the item I selected is no longer present. With the new object, I then set the state.  Here is my code:</p>
  
  <pre><code>     export default class MainApp extends Component {
            constructor(props) {
              super(props);
  
              this.state = {
                damping: 1 - 0.6,
                tension: 400,
                dataBlob: [],
              dataSource: new ListView.DataSource({rowHasChanged: (r1, r2) =&gt; r1 !== r2}),
              };
  
            }
  
           componentDidMount() {
  
          fetch('http://54.152.253.14/barbershop/appointmentHelper.php')
          .then((response) =&gt; response.json())
          .then((responseData) =&gt; {
            this.state.dataBlob = responseData;
            this.setState({
                dataSource:this.state.dataSource.cloneWithRows(this.state.dataBlob),
                isLoading: false,
              });
          })
          .done();
        }
  
         deleteItem(rowId){
     console.log(rowId);
     this.state.dataBlob.splice(rowId,1);
     console.log(this.state.dataBlob);
     this.setState({
     dataSource: this.state.dataSource.cloneWithRows(this.state.dataBlob),
     })
    }
    fetchData() {
  
    }
  
    renderList = (dataObj,sectionID,rowId) =&gt; {
  
      return (
        &lt;View style={styles.container}&gt;
  
          &lt;Row damping={this.state.damping} tension={this.state.tension} onPress={()=&gt;this.deleteItem(rowId)}&gt;
            &lt;View style={styles.rowContent}&gt;
              &lt;View style={styles.rowIcon} /&gt;
              &lt;View&gt;
                &lt;Text style={styles.rowTitle}&gt;{dataObj.service}&lt;/Text&gt;
                &lt;Text style={styles.rowSubtitle}&gt;Drag the row left and right&lt;/Text&gt;
              &lt;/View&gt;
            &lt;/View&gt;
          &lt;/Row&gt;
  
  
  
        &lt;/View&gt;
      );
    };
  
    render() {
      return (
             &lt;ListView
              dataSource={this.state.dataSource}
              renderRow={(data, sectionID, rowID) =&gt; this.renderList(data, sectionID, rowID)}
              style={styles.listView}
  
              /&gt;
             );
    }
  }
  </code></pre>
  
  <p>Any help will be greatly appreciated. I feel like I missing some conceptual idea about list-view and really looking forward to improving my understanding. Thanks.</p>