首页 > 解决方案 > 表情符号具有相同的价值

问题描述

我正在创建一个slot machine使用emojisinreactjs

主要问题是

我得到了相同的表情符号值,并且只有一个条件适用于 if-else,这意味着当每个表情符号都不同时,我只能得到匹配

import React from "react";

const SlotM = (props) => {
  //let x = "";
  //let y = "";
  //let z = "";

  let emoji = ["", "", "", "", "", "", "", "", ""];

  let random = (mn, mx) => {
    return Math.random() * (mx - mn) + mn;
  };

  let onClic = () => {
    return emoji[Math.floor(random(1, 9)) - 1];
  };

  let { x = onClic(), y = onClic(), z = onClic() } = props;

  console.log(x, y, z);
  if (props.x === props.y && props.y === props.z) {
    return (
      <>
        <div className="slot_inner">
          <h1>
            {x} {y} {z}
          </h1>
          <h1>This is mathcing</h1>
          {console.log(x.charCodeAt(), y, z)}
          <hr />
        </div>
      </>
    );
  } else {
    return (
      <>
        <div className="slot_inner">
          <h1>
            {x} {y} {z}
          </h1>
          <h1>This is not mathcing</h1>
          <hr />
        </div>
      </>
    );
  }
};

export default SlotM;

如何解决这个问题..!?

标签: javascriptreactjs

解决方案


也许您忘记将参数传递给 SlotM。请参阅我的工作示例:https ://codesandbox.io/s/affectionate-franklin-7lq64?file=/src/App.js 注意我是如何传递道具的:

      <SlotM x="" y="" z="" />
      <SlotM x="" y="" z="" />

推荐阅读