Я пытался создать приложение для чата, используя angular и node js, приложение работало нормально, когда я отправлял только текст сообщения, но когда я добавил emoji с помощью emojionearea из This , функция emojionearea получает оверлей с текстовой областью, а затем через оверлей emojionearea ничего не отправляется.
Когда я пытался клонировать текст, введенный в оверлей, в другую текстовую область, используя js, тогда другая текстовая область показывает текст, но он работает только тогда, когда я добавляю любой другой символ в строку.
index.hbs
<!doctype html>
<html lang="en">
<head>
<base href="/">
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Chat App</title>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7" crossorigin="anonymous">
<link rel="stylesheet" href="/stylesheets/style.css">
<link rel="stylesheet" href="https://cdn.rawgit.com/mervick/emojionearea/master/dist/emojionearea.min.css">
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script type="text/javascript" src="https://cdn.rawgit.com/mervick/emojionearea/master/dist/emojionearea.min.js"></script>
</head>
<body>
<my-app>Loading...</my-app>
<script src="/js/app/bundle.js"></script>
<script>
$(document).ready(function() {
$("#example1").emojioneArea({
pickerPosition: "right",
tonesStyle: "bullet",
events: {
blur: function (editor, event) {
console.log(editor.html());
console.log(this.getText());
console.log($("#example1").val());
}
}
});
});
</script>
</body>
</html>
app.component. html
<div class="well" style="height:200px; padding:15px;">
<div *ngFor="let item of messageArray">
<span><strong>{{item.user}} : </strong> {{item.message}}</span>
</div>
</div>
</div>
<div class="row">
<div class="col-sm-10">
<textarea id="example1" class="form-control" [(ngModel)]="messageText"></textarea>
</div>
<div class="col-sm-2">
<button type="button" class="btn btn-success pull-right" (click)="sendMessage()">Send</button>
</div>
</div>
После запуска сервера и ввод имени пользователя, когда я отправляю сообщение, видно только имя пользователя Как видно на изображении
И если я удалю функцию Emojionearea, то она будет работать правильно, функционирование будет выглядеть если я ввожу смайлики и текст, все должно go в качестве сообщения. Может кто-нибудь, пожалуйста, помогите мне, спасибо.