当我想导航到版本化 Docusaurus 网站的翻译页面时,我收到以下错误消息:
无法获取 /docs/de/...
我遵循了文档站点上的所有建议。这就是我所拥有的。
Crowdin.yaml:
files:
-
source: '/docs/**/*.md'
translation: '/website/translated_docs/%locale%/**/%original_file_name%'
languages_mapping: &anchor
locale:
'de': 'de'
-
source: '/website/i18n/en.json'
translation: '/website/i18n/%locale%.json'
languages_mapping: *anchor
-
source: '/website/versioned_docs/**/*.md'
translation: '/website/translated_docs/%locale%/**/%original_file_name%'
languages_mapping: *anchor
包.json
{
"main": "main.js",
"scripts": {
"examples": "docusaurus-examples",
"start": "docusaurus-start",
"build": "docusaurus-build",
"publish-gh-pages": "docusaurus-publish",
"write-translations": "docusaurus-write-translations",
"version": "docusaurus-version",
"rename-version": "docusaurus-rename-version",
"crowdin-upload": "crowdin --config ../crowdin.yaml upload sources --auto-update -b master",
"crowdin-download": "crowdin --config ../crowdin.yaml download -b master",
"lint": "yarn run markdownlint --config .markdownlint.json ../docs"
},
"devDependencies": {
"docusaurus": "1.13.0",
"markdownlint-cli": "^0.18.0"
}
}
版本.json
[
"2019.6.0",
"2019.5.0"
]
语言.js
/**
* Copyright (c) 2017-present, Facebook, Inc.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
const languages = [
{
enabled: true,
name: "English",
tag: "en"
},
{
enabled: false,
name: "日本語",
tag: "ja"
},
{
enabled: false,
name: "العربية",
tag: "ar"
},
{
enabled: false,
name: "Bosanski",
tag: "bs-BA"
},
{
enabled: false,
name: "Català",
tag: "ca"
},
{
enabled: false,
name: "Čeština",
tag: "cs"
},
{
enabled: false,
name: "Dansk",
tag: "da"
},
{
enabled: true,
name: "Deutsch",
tag: "de"
},
{
enabled: false,
name: "Ελληνικά",
tag: "el"
},
{
enabled: false,
name: "Español",
tag: "es-ES"
},
{
enabled: false,
name: "فارسی",
tag: "fa-IR"
},
{
enabled: false,
name: "Suomi",
tag: "fi"
},
{
enabled: false,
name: "Français",
tag: "fr"
},
{
enabled: false,
name: "עִברִית",
tag: "he"
},
{
enabled: false,
name: "Magyar",
tag: "hu"
},
{
enabled: false,
name: "Bahasa Indonesia",
tag: "id-ID"
},
{
enabled: false,
name: "Italiano",
tag: "it"
},
{
enabled: false,
name: "Afrikaans",
tag: "af"
},
{
enabled: false,
name: "한국어",
tag: "ko"
},
{
enabled: false,
name: "मराठी",
tag: "mr-IN"
},
{
enabled: false,
name: "Nederlands",
tag: "nl"
},
{
enabled: false,
name: "Norsk",
tag: "no-NO"
},
{
enabled: false,
name: "Polskie",
tag: "pl"
},
{
enabled: false,
name: "Português",
tag: "pt-PT"
},
{
enabled: false,
name: "Português (Brasil)",
tag: "pt-BR"
},
{
enabled: false,
name: "Română",
tag: "ro"
},
{
enabled: false,
name: "Русский",
tag: "ru"
},
{
enabled: false,
name: "Slovenský",
tag: "sk-SK"
},
{
enabled: false,
name: "Српски језик (Ћирилица)",
tag: "sr"
},
{
enabled: false,
name: "Svenska",
tag: "sv-SE"
},
{
enabled: false,
name: "Türkçe",
tag: "tr"
},
{
enabled: false,
name: "Українська",
tag: "uk"
},
{
enabled: false,
name: "Tiếng Việt",
tag: "vi"
},
{
enabled: false,
name: "中文",
tag: "zh-CN"
},
{ enabled: false, name: "繁體中文", tag: "zh-TW" }
];
module.exports = languages;
目录结构:
.
D:\Source\dime-scheduler-docs
.
+---docs
| +---administrator-manual
| | +---administration
| | | +---administration-identity.md
| | | +---administration-roles.md
| | | +---administration-usergroups.md
| | | +---administration-users-generatedcontent.md
| | | \---administration-users.md
| | +---fasttrack
| | +---settings
| | +---troubleshooting
| | +---configuration.md
| +---developer-manual
| +---faq
| +---guides
| +---installation-manual
| +---intro
| +---plugins
| +---user-manual
+---website
| +---blog
| +---core
| +---i18n
| | +---de.json
| | \---en.json
| +---pages
| | +---de
| | | +---index.js
| | | \---versions.js
| | \---en
| | +---index.js
| | \---versions.js
| +---static
| | +---css
| | +---fonts
| | +---img
| | \---js
| +---translated_docs
| | \---de
| | +---user-manual
| | | +---authentication
| | | | +---authentication-intro.md
| | +---version-2019.5.0
| | | +---administrator-manual
| | | | +---administration
| | | | | +---administration-identity.md| |
| | \---version-2019.6.0
| | +---installation-manual
| | | +---backoffice
| | | | \---install-backoffice-service.md
| | | +---dynamics
| | +---plugins
| | \---user-manual
| +---versioned_docs
| | +---version-2019.5.0
| | +---version-2019.6.0
| +---versioned_sidebars
| | \---version-2019.5.0-sidebars.json
| +---.markdownlint.json
| +---languages.js
| +---main.js
| +---package.json
| +---sidebars.json
| +---siteConfig.js
| +---versions.json
| \---yarn.lock
+---.dockerignore
+---.gitignore
+---azure-pipelines.yml
+---crowdin.yaml
+---docker-compose.yml
+---Dockerfile
+---README.md
+---tree.txt
\---yarn.lock
运行命令yarn crowdin-upload
和后yarn crowdin-download
,将translated_docs
填充该文件夹。在de
子文件夹中,有 docs 的文件夹,包括 version 的另一个子目录version-2019.6.0
。
当我运行yarn start
并将语言切换到另一种语言时,顶部菜单被翻译。但是,当我导航到 时http://localhost:3000/docs/de/user-manual/user-intro
,我得到一个空白页面,并显示错误消息“无法获取/...”。
当我从项目中删除versions.json 和versions.js 时,一切正常。此外,如果我保持版本控制并导航到“下一个”版本,它也可以正常工作。
所以问题一定在这个区域的某个地方。据我所知,没有办法调试或诊断确切的问题。这就是为什么我想听听还有谁遇到过这个问题?