使用JSON文件路径配置jquery.i18n不生效,仅展示data-i18n属性值
jquery.i18n 加载JSON翻译文件失败排查方案
- 检查文件路径配置正确性
jquery.i18n 的路径是相对于当前访问的HTML文件的相对路径,建议优先使用绝对路径配置,避免相对路径寻址错误。你可以直接在浏览器地址栏输入配置的JSON路径,确认可以正常访问到文件内容。 - 校验JSON文件格式合法性
翻译JSON文件不能存在语法错误,包括末尾多余逗号、引号未闭合、键名未统一用双引号包裹等问题,插件加载非法格式的JSON时会静默失败,直接展示data-i18n属性值。 - 调整初始化执行顺序
JSON文件加载是异步操作,必须等待加载完成回调后再执行页面翻译渲染,正确写法参考:// 按语言配置对应JSON路径 $.i18n().load({ zh: '/i18n/zh-CN.json', en: '/i18n/en-US.json' }).done(function() { // 加载完成后再渲染页面带data-i18n的元素 $('[data-i18n]').i18n(); }); - 排查跨域问题
如果你是直接用file://协议打开本地HTML文件,浏览器的安全策略会禁止加载本地JSON文件,触发跨域报错。你需要部署本地静态服务访问项目,比如使用VS Code的Live Server插件、Nginx静态服务、Node.js的http-server工具都可以解决该问题。
内容的提问来源于stack exchange,提问作者Akash NO
相关产品推荐
相关产品推荐

