用途:把 Intlayer 国际化方案接入 SolidJS 组件,适合需要为 SolidJS 应用搭建多语言、创建可翻译组件的场景。
核心理念:组件级内容声明。不集中维护一个庞大的全局翻译文件,而是在使用内容的 Solid 组件旁放置 *.content.ts 文件声明字典。
工作流:创建可翻译组件需要两个文件——声明文件(如 myComponent.content.ts)定义字典;实现文件(如 MyComponent.tsx)使用 useIntlayer 钩子。
声明内容:在内容文件中用 t() 写翻译,字典需设置唯一的 key,且与传给 useIntlayer() 的值一致。示例:import { t, type Dictionary } from "intlayer"; 定义 key 为 "my-component",content 内用 t({ en: "Welcome", fr: "Bienvenue", es: "Hola" }) 并 satisfies Dictionary 后默认导出。
使用方式:在 Solid 组件中从 "solid-intlayer" 导入 useIntlayer,调用 const content = useIntlayer("my-component")。注意在 Solid 中该钩子返回访问器函数,必须调用 content() 才能取得响应式内容;渲染文本用 content().text,取字符串用 content().text.value。
环境与包:资料列出 Vite 与 Solid 环境,以及 Solid Intlayer 导出包。
限制:资料未提供安装命令、版本要求、配置细节、收费与价格信息,这些暂未提供。