我想将常见的表情符号代码(如“:wave:”或“:+1:”)解析为实际的表情图片。
在Angular / HTML / ts / js中有没有一种简便而又快速的方法而无需对字符串进行切片?
预先感谢您:)
答案 0 :(得分:1)
我使用NPM package Namindu的建议并实现了一个管道来翻译包含表情符号代码的文本,以显示表情符号而不是代码,因为该程序包仅提供了表情符号选择器。
export class EmojiTranslatePipe implements PipeTransform {
constructor(private emojiService: EmojiService) {
}
transform(value: string, args?: any): string {
let subs = value.split(":");
subs.forEach(s => {
let emoji = this.findEmoji(s);
if (emoji) {
let emojiCode = `:${s}:`;
value = value.replace(emojiCode, emoji);
}
});
return value;
}
findEmoji(id: string): string | undefined {
let emoji = this.emojiService.emojis.find(emoji => emoji.id == id);
if (emoji) {
return emoji.native;
}
return undefined;
}
}
答案 1 :(得分:0)
尝试使用this NPM软件包。可能对您有帮助。