Baasi andmete uuendamine

Natuke kenamaks: client/main.css.

Lisan failis Item.js hääletuse funktsiooni voteOne() ja kuna uuendamisel kasutan andmebaasi tuleb importida Items.js:

import Items from '../api/Items';

Funktsioon voteOne():

voteOne(){
    Items.update(this.props.item._id, {
      $inc: {
        'asiYks.value': 1
      }
    })
  }

$inc: on Mongodb operaator mis suurendab argumenti.

Lisan funktsiooni klikisündmusele:

<div className='vote-one' onClick={this.voteOne.bind(this)}>

NB! Siin jällegi bind(this) vajalik.

Analoogiliselt vaja lisada ka teise paarilise jaoks funktsioon voteTwo() ja fail Item.js on:

import React, {Component} from 'react';
import Items from '../api/Items';
export default class Item extends Component {
  voteOne(){
    Items.update(this.props.item._id, {
      $inc: {
        'asiYks.value': 1
      }
    })
  }
  voteTwo(){
    Items.update(this.props.item._id, {
      $inc: {
        'asiKaks.value': 1
      }
    })
  }
  render() {
    return (
      <div className='item'>
      <div className='vote-one' onClick={this.voteOne.bind(this)}>
      <span> {this.props.item.asiYks.value} </span>
      <h3>{this.props.item.asiYks.text}</h3>
      </div>
      <span>vs</span>
      <div className='vote-two' onClick={this.voteTwo.bind(this)}>
      <span> {this.props.item.asiKaks.value} </span>
      <h3>{this.props.item.asiKaks.text}</h3>
      </div>
      </div>
    )
  }
}

Last updated