我是 React-i18nnext 库的新手。我尝试将翻译分成文件,以便每个页面都有一个单独的 JSON 文件,而不是单个文件。
我对如何执行本指南中的以下步骤感到困惑:
我使用以下代码来调用默认translate.json
文件:
<h1>{t('title')}</h1>
Run Code Online (Sandbox Code Playgroud)
但我想调用不同的文件,所以我必须根据指南使用:
<h1>{t('test:title')}</h1>
Run Code Online (Sandbox Code Playgroud)
如果我使用文件translation.json
- 一切正常,但如果我使用文件的另一个名称 - 它会失败并出现错误:
i18next::translator: missingKey en test title title
Run Code Online (Sandbox Code Playgroud)
我按照图书馆官方页面上的“逐步”指南进行操作。
这是我的i18n.js
文件:
<h1>{t('title')}</h1>
Run Code Online (Sandbox Code Playgroud)
为了更好地概述,我将代码添加到codesandbox:
如何要求bot向另一个与bot接收命令不同的通道(特定通道)发送消息?
假设 bot!ban @xxx
在 channel 中接收消息#a
,如果操作完成,bot 发送ban to user @xxx is given
到 channel #b
。
代码Main.java
:
import net.dv8tion.jda.core.*;
public class Main {
private static String token = "NDk0MjI2Mjk2OTY5MjMyMzk0.DowgCA.j0sQHnBV3wm70rzz7Q78rX0NVPU";
public static void main(String[] args) throws Exception{
try {
JDA api = new JDABuilder(AccountType.BOT).setToken(token).build();
api.addEventListener(new MyEventListner() );
} catch (Exception e) {
e.printStackTrace();
}
}
}
Run Code Online (Sandbox Code Playgroud)
代码MyEventListner.java
:
import net.dv8tion.jda.core.entities.Member;
import net.dv8tion.jda.core.entities.Message;
import net.dv8tion.jda.core.entities.MessageChannel;
import net.dv8tion.jda.core.entities.Role;
import net.dv8tion.jda.core.entities.User;
import net.dv8tion.jda.core.events.message.MessageReceivedEvent;
import net.dv8tion.jda.core.hooks.ListenerAdapter;
public …
Run Code Online (Sandbox Code Playgroud)