Неправильное отображение смайликов

#javascript #reactjs #chat #emoji

#javascript #reactjs #Чат #смайлики

Вопрос:

Как вы можете видеть, я пытаюсь отобразить на входе те же смайлики, которые я вижу в настройках смайликов, но когда я нажимаю на них, они фактически меняют версию, и я просто вижу старую версию (родную) на входе. Я использую Google Chrome, и когда я открываю тот же локальный хост в мобильной версии, он показывает, что я хочу (версия Apple emoji). Не могли бы вы мне помочь? Большое вам спасибо! 🙂

Не отображается та же версия

 "emoji-mart": {
      "version": "3.0.0",
      "resolved": "https://registry.npmjs.org/emoji-mart/-/emoji-mart-3.0.0.tgz",
      "integrity": "sha512-r5DXyzOLJttdwRYfJmPq/XL3W5tiAE/VsRnS0Hqyn27SqPA/GOYwVUSx50px/dXdJyDSnvmoPbuJ/zzhwSaU4A==",
      "requires": {
        "@babel/runtime": "^7.0.0",
        "prop-types": "^15.6.0"
      }
    }

import { Picker } from "emoji-mart";
import "emoji-mart/css/emoji-mart.css";
  

Я уже установил зависимости от emoji-mart-native:

 npm install emoji-datasource-apple
npm install emoji-datasource-google
npm install emoji-datasource-twitter
npm install emoji-datasource-facebook
  

Держу пари, что может возникнуть проблема между emoji-mart-native и emoji-mart, но я не уверен

 const addEmoji = (e: any) => {
    let emoji = e.native; 
    //e.apple here doesn't work. Downward I'm gonna show the difference between e.native and e.apple
    settextMessage(textMessage   emoji);
  };

<li>
  <ButtonDropdown
  className="emoji-dropdown"
  direction="up">
     <DropdownToggle
     id="emoji"
     color="link"
     className="text-decoration-none font-size-16 btn-lg waves-effect">
     <i className="ri-emotion-happy-line"></i>
     </DropdownToggle>
     <DropdownMenu className="dropdown-menu-lg-right">
           <Picker set="apple" onSelect={addEmoji} />
     </DropdownMenu>
  </ButtonDropdown>
  <UncontrolledTooltip target="emoji" placement="top">
      Emoji
  </UncontrolledTooltip>
</li>
  

документация по реквизиту ‘set’:

установить документацию

e.native (с другой стороны, я прокомментировал, что он, вероятно, получит e.apple, но он ничего не показывает, когда я это делаю):

e.родной

e.apple (смайлики, которые я хотел бы отправить, вместо старой версии (родной))

введите описание изображения здесь

Комментарии:

1. Кто-нибудь, поправьте меня, если я ошибаюсь, но я уверен, что смайлики кодируются одинаково, независимо от того, какая версия отображается. То, как оно отображается, зависит от системы, для эмодзи native / apple нет отдельного символа Юникода.