File tree 5 files changed +14
-6
lines changed
5 files changed +14
-6
lines changed Original file line number Diff line number Diff line change @@ -2,15 +2,15 @@ import { useEffect, useState } from 'react';
2
2
import { CodeBlockData } from 'markdown-react-code-preview-loader' ;
3
3
import { useTranslation } from 'react-i18next' ;
4
4
5
- const useMdData = ( path : ( lang : string ) => Promise < { default : CodeBlockData } > ) => {
5
+ const useMdData = ( path : ( lang : string ) => Promise < { default : CodeBlockData } > , name : string = 'language' ) => {
6
6
const init = useTranslation ( ) ;
7
7
const [ mdData , setMdData ] = useState < CodeBlockData > ( {
8
8
source : '' ,
9
9
components : { } ,
10
10
codeBlock : { } ,
11
11
languages : { } ,
12
12
} ) ;
13
- const lang = init . t ( 'language' ) ;
13
+ const lang = init . t ( name ) ;
14
14
useEffect ( ( ) => {
15
15
const getMd = async ( ) => {
16
16
try {
Original file line number Diff line number Diff line change @@ -6,9 +6,11 @@ import LanguageData from './language.json';
6
6
// or even better, manage them separated from your code: https://react.i18next.com/guides/multiple-translation-files)
7
7
const resources : Record < string , { translation : { language : string } } > = { } ;
8
8
Object . entries ( LanguageData ) . forEach ( ( [ key , item ] ) => {
9
+ const { value, label, ...rest } = item ;
9
10
resources [ key ] = {
10
11
translation : {
11
12
language : item . value ,
13
+ ...rest ,
12
14
} ,
13
15
} ;
14
16
} ) ;
Original file line number Diff line number Diff line change 1
1
{
2
2
"zh" : {
3
3
"label" : " 中文" ,
4
- "value" : " -zh"
4
+ "value" : " -zh" ,
5
+ "markdown-react-code-preview-loader" : " README-zh" ,
6
+ "App" : " App-zh"
5
7
},
6
8
"en" : {
7
9
"label" : " 英文" ,
8
- "value" : " "
10
+ "value" : " " ,
11
+ "markdown-react-code-preview-loader" : " README" ,
12
+ "App" : " App"
9
13
}
10
14
}
Original file line number Diff line number Diff line change 1
1
import MarkdownPreview from '@uiw/react-markdown-preview' ;
2
2
import useMdData from './../../components/useMdData' ;
3
3
export function HomePage ( ) {
4
- const mdData = useMdData ( ( lang ) => import ( `markdown-react-code-preview-loader/README${ lang } .md` ) ) ;
4
+ const mdData = useMdData ( ( path ) => {
5
+ return import ( `markdown-react-code-preview-loader/${ path } .md` ) ;
6
+ } , 'markdown-react-code-preview-loader' ) ;
5
7
return < MarkdownPreview source = { mdData . source } /> ;
6
8
}
Original file line number Diff line number Diff line change @@ -14,7 +14,7 @@ const getMetaData = (meta: string) => {
14
14
} ;
15
15
16
16
export function ExamplePage ( ) {
17
- const mdData = useMdData ( ( lang ) => import ( `./App ${ lang } .md` ) ) ;
17
+ const mdData = useMdData ( ( path ) => import ( `./${ path } .md` ) , 'App' ) ;
18
18
return (
19
19
< div >
20
20
< MarkdownPreview
You can’t perform that action at this time.
0 commit comments