userscript...
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
import { useSetting } from "./Setting";
|
||||
import { I18N, URL_RAW_PREFIX } from "../config";
|
||||
import { useEffect, useState } from "react";
|
||||
import { useFetch } from "./Fetch";
|
||||
|
||||
/**
|
||||
* 多语言 hook
|
||||
@@ -13,29 +13,7 @@ export const useI18n = () => {
|
||||
|
||||
export const useI18nMd = (key) => {
|
||||
const i18n = useI18n();
|
||||
const [md, setMd] = useState("");
|
||||
const [loading, setLoading] = useState(false);
|
||||
const [error, setError] = useState("");
|
||||
|
||||
const fileName = i18n(key);
|
||||
|
||||
useEffect(() => {
|
||||
if (!fileName) {
|
||||
return;
|
||||
}
|
||||
|
||||
const url = `${URL_RAW_PREFIX}/${fileName}`;
|
||||
setLoading(true);
|
||||
fetch(url)
|
||||
.then((res) => {
|
||||
if (res.ok) {
|
||||
return res.text().then(setMd);
|
||||
}
|
||||
setError(`[${res.status}] ${res.statusText}`);
|
||||
})
|
||||
.catch(setError)
|
||||
.finally(() => setLoading(false));
|
||||
}, [fileName]);
|
||||
|
||||
return [md, loading, error];
|
||||
const url = `${URL_RAW_PREFIX}/${fileName}`;
|
||||
return useFetch(url);
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user