Как внешний интерфейс обрабатывает выражения эмодзи

Node.js база данных внешний интерфейс jQuery

За это время я занимался разработкой мобильного терминала.Одной из функций является оставление комментариев.На самом деле сама эта функция относительно проста,но при тестировании QA выдало ошибку,говоря что ввод эмодзи, поставляемого с мобильным телефоном, не удалось отправить. Я был удивлен. Выражение эмодзи также является текстовым содержимым. Почему не удалось отправить? После отладки через Chrome я обнаружил, что не удалось отправить в фоновый режим , то есть фон его не сохранил, а потом я перешел на фоновую ссылку.Проверив данные, я обнаружил, что количество байтов, занимаемых эмодзи, составляет 4 байта, что является проблемой, вызванной кодировкой js. Для фоновой базы данных обычно используется форма хранения UTF-8, которую нельзя сохранить.

Итак, как решить эту проблему, есть много способов решить ее, как переднюю, так и внутреннюю часть можно решить.

1. Измените формат базы данных в фоновом режиме

Выполните инструкцию sql, чтобы изменить формат кодирования базы данных наutf8mb4Форма хранения, эта 4-байтовая форма хранения UTF-8 полностью совместима с предыдущей 3-байтовой формой хранения и может напрямую хранить выражения смайликов, что является наиболее совершенным решением.

2. Используйте кодировку base-64

Например, вы можете использовать base-encode для кодирования выражений смайликов и сохранения их в UTF-8.Вы можете декодировать их, когда вынимаете их, но я не пробовал их.

3. Убить смайлик

Насильственно убивать, предполагается, что премьер-министр не согласится на это

4. Фронтальная обработка

Это преобразование входных смайликов в тег span через сторонний плагин и назначение соответствующего класса, поиск множества смайликов, картинок с выражениями и отправка их на задний план.Преимущество этого в том, что это отображается одинаково на всех устройствах, и не будет никакой двусмысленности.Конечно, недостатком является то, что выражения смайликов обновляются.Возможно, что найденная библиотека изображений выражений смайликов, которую вы найдете, является неполной, и некоторые выражения не могут отображаться на стр., который требует регулярного обслуживания

Порекомендуйте более полезную библиотеку плагиновGitHub.com/node-модуль…

Как использовать Сначала загрузите плагин emoji

<link href="http://cdn.staticfile.org/emoji/0.2.2/emoji.css" rel="stylesheet" type="text/css" />
<script src="http://cdn.staticfile.org/emoji/0.2.2/emoji.js"></script>

Отраженный в этих двух базах кода, этот плагин вообще не должен полагаться на библиотеку jquery.

Это еще проще

var text = document.querySelector('emojiText');
cosnoel.log(jEmoji. unifiedToHTML(text.value))

Если используется спецификация commenJS

$ npm install emoji

var emoji = require('emoji');
console.log('😎', emoji.unifiedToHTML('😎'));