大佬教程收集整理的这篇文章主要介绍了在 Routeify 上添加和保留 i18n 基本路径,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我想在 RoutIfy 上使用 i18n 基本路径。
换句话说,我的网址是这样的:www.example.com/about-us/
我想把它改成这样:www.example.com/[CURRENT_LANGUAGE]/about-us/
我已经按照官方网站上提供的 the example 进行操作,但它对我不起作用。当我添加 /ru/
或 /en/
前缀时,它会起作用。但是当我通过单击 href
更改 URL 时,它会删除前缀但转到所需的 URL。我还需要在新 URL 中包含前缀。
我想我需要更改我的 href
以采用新的基本路径逻辑。但不知道该怎么做。我该如何解决这个问题?非常感谢任何帮助。
我的构建信息:Svelte、snowpack、RoutIfy、Svelte-i18n。
GitHub 存储库:Click here
我尝试将您的 import React,{ useState,useEffect,createContext } from 'react';
import axios from '../services/axios';
import requests from '../services/requests';
export const BreedContext = createContext();
export const BreedProvider = ({ children,breed,limit,resetLimit}) => {
const [breeds,setBreeds] = useState([]);
const [showMore,setShowMore] = useState(limit);
useEffect(() => {
if (breed.length !== 0) {
setShowMore(limit);
}
},[breed]);
useEffect(() => {
async function fetchData() {
if (breed.length !== 0) {
const request = await axios.get(requests.fetchBreed + 'page=1&limit=' + showMore + '&breed_id=' + breed);
setBreeds(request.data);
console.log('async',request.data.length);
return request;
}
}
fetchData();
},[showMore,breed]);
return (
<BreedContext.Provider value={[breeds,setBreeds]}>
{Children}
<div className="row">
<div className="col-md-3 col-sm-6 col-12">
<button type="button" className="btn btn-success" onClick={() => { setShowMore(showMore + limit) }}>Load more</button>
</div>
</div>
</BreedContext.Provider>
);
}
复制粘贴到入门模板,但它按预期工作。导航时保留语言。
如果您要更改活动语言,则必须
App.svelte
中的 lang
值或App.svelte
如果您使用普通的 window.LOCATIOn.href = '/en/some/page'
,则需要包含 href
。 IE。 $url
或 <a href={$url('/about')>about</a>
。否则,您的 URL 将不会被重写。 https://routIfy.dev/docs/Helpers#url
以上是大佬教程为你收集整理的在 Routeify 上添加和保留 i18n 基本路径全部内容,希望文章能够帮你解决在 Routeify 上添加和保留 i18n 基本路径所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。