自定义语言
大约 3 分钟...
本教程指引你自定义 @waline/client
多语言与显示文字。
简介
@waline/client
提供了 locale
选项,你可以通过它自定义多语言与显示文字。
默认情况下,它会使用内置的多语言文字,并在语言不受支持时,回退到 en-US
(英语美国)。
你可以传递一个完成的多语言配置给 locale
选项来新增语言支持,或者设置其中的几项对现有的 UI 文字进行覆盖。
locale 选项
等级相关:
level${number}
: number 等级的文字
提示
比如你设置了 6 个等级,你可以这样定义它们:
Waline.init({ locale: { level0: '炼体', level1: '炼气', level2: '筑基', level3: '金丹', level4: '元婴', level5: '化神', }, });
反应相关:
reactionTitle
: 反应标题reaction0
: 反应 1 文字reaction1
: 反应 2 文字reaction2
: 反应 3 文字reaction3
: 反应 4 文字reaction4
: 反应 5 文字reaction5
: 反应 6 文字reaction6
: 反应 7 文字reaction7
: 反应 8 文字reaction8
: 反应 9 文字
UI 相关:
nick
: 昵称mail
: 邮箱link
: 网址placeholder
: 评论框默认文字sofa
: 评论区为空时的显示文字submit
: 提交按钮文字comment
: 评论按钮文字refresh
: 刷新按钮文字more
: 加载更多按钮文字uploading
: 上传时显示文字login
: 登录按钮文字admin
: 管理员的标签sticky
: 置顶文字word
: 字anonymous
: 匿名用户默认名称optional
: 标明可选项的文字gifSearchPlaceholder
: 表情包搜索占位文字oldest
: 最早的评论latest
: 最新的评论hottest
: 最热的评论
相关信息
此分类内的文字会显示在页面上。
提示信息相关:
nickError
: 昵称不满足条件的错误信息mailError
: 邮箱不满足条件的错误信息wordHint
: 评论字数的错误提示,其中$0
$1
$2
会被自动替换为字数允许下限、字数允许上限、当前字数。
评论时间相关:
seconds
: 秒前minutes
: 分钟前hours
: 小时前days
: 天前now
: 刚刚
管理相关:
approved
: 审核通过waiting
: 等待审核spam
: 垃圾评论unsticky
: 取消置顶
无障碍相关:
like
: 喜欢文字cancelLike
: 取消喜欢文字reply
: 回复按钮的标签文字cancelReply
: 取消回复按钮的标签文字preview
: 预览按钮的标签文字emoji
: 表情按钮的标签文字gif
: 表情包按钮的标签文字uploadImage
: 上传图片按钮的标签文字profile
: 档案页标签文字logout
: 退出登录按钮的标签文字
相关信息
上述文字只用于无障碍服务增强,不会显示在页面中。
例子
// 中文默认
const locale = {
nick: '昵称',
nickError: '昵称不能少于3个字符',
mail: '邮箱',
mailError: '请填写正确的邮件地址',
link: '网址',
optional: '可选',
placeholder: '欢迎评论',
sofa: '来发评论吧~',
submit: '提交',
like: '喜欢',
cancelLike: '取消喜欢',
reply: '回复',
cancelReply: '取消回复',
comment: '评论',
refresh: '刷新',
more: '加载更多...',
preview: '预览',
emoji: '表情',
uploadImage: '上传图片',
seconds: '秒前',
minutes: '分钟前',
hours: '小时前',
days: '天前',
now: '刚刚',
uploading: '正在上传',
login: '登录',
logout: '退出',
admin: '博主',
sticky: '置顶',
word: '字',
wordHint: '评论字数应在 $0 到 $1 字之间!\n当前字数:$2',
anonymous: '匿名',
level0: '潜水',
level1: '冒泡',
level2: '吐槽',
level3: '活跃',
level4: '话痨',
level5: '传说',
gif: '表情包',
gifSearchPlaceholder: '搜索表情包',
profile: '个人资料',
approved: '通过',
waiting: '待审核',
spam: '垃圾',
unsticky: '取消置顶',
oldest: '按倒序',
latest: '按正序',
hottest: '按热度',
reactionTitle: '你认为这篇文章怎么样?',
};
Waline.init({
el: '#waline',
serverURL: 'YOUR_SERVER_URL',
path: location.pathname,
// ...
locale,
});
友情提示:评论区仅作评论展示,如有问题咨询请去 Github Discussion 中提问。