dart_emoji

? 一个轻量级的 Emoji ? 库,用于 Dart & Flutter,包含所有最新的表情符号,用纯 Dart ? 编写。由 ?% ☕ 和 ❤️ 制成!

这是对 flutter_emoji 的一个分支,它受到 node-emoji 包的启发。

为什么这是对 flutter_emoji 的一个分支?

  flutter_emoji dart_emoji
仍在维护吗?
空安全
纯 Dart 包
更新的表情符号

dart_emoji 已在我们的应用程序 Gatch 中用于生产环境。您可以在 iOSAndroid 上获取 Gatch。

API 使用

首先,导入该包

import 'package:dart_emoji/dart_emoji.dart';

您需要了解两个主要类来处理 Emoji 文本:EmojiEmojiParser

基本上,您需要初始化一个 EmojiParser 实例。

var parser = EmojiParser();
var coffee = Emoji('coffee', '☕');
var heart  = Emoji('heart', '❤️');

// Get emoji info
var emojiHeart = parser.info('heart');
print(emojiHeart); '{name: heart, full: :heart:, code: ❤️}'

// Check emoji equality
heart == emojiHeart;  // returns: true
heart == emojiCoffee; // returns: false

// Get emoji by name or code
parser.get('coffee');   // returns: Emoji{name="coffee", full=":coffee:", code="☕"}
parser.get(':coffee:'); // returns: Emoji{name="coffee", full=":coffee:", code="☕"}

parser.hasName('coffee'); // returns: true
parser.getName('coffee'); // returns: Emoji{name="coffee", full=":coffee:", code="☕"}

parser.hasEmoji('❤️'); // returns: true
parser.getEmoji('❤️'); // returns: Emoji{name="heart", full=":heart:", code="❤️"}

parser.emojify('I :heart: :coffee:'); // returns: 'I ❤️ ☕'
parser.unemojify('I ❤️ ☕'); // returns: 'I :heart: :coffee:'

// Check if text contains only emojis
EmojiUtil.hasOnlyEmojis("?"); // returns true
EmojiUtil.hasOnlyEmojis("? Hello"); // returns false

如果找不到表情符号,所有方法都将返回 Emoji.None

parser.get('does_not_exist_emoji_name'); // returns: Emoji.None

许可证

MIT © 2021 Gatch GmbH.

GitHub

查看 Github