翻译文件:字段、视图、按钮、路径怎么显示中文
en.js 决定内部 Id 在页面上显示成什么字。课件原话:「在 En.js 中对定义的 View 或 Action ID 进行 ID 注册,然后在本地化中进行翻译。」
| 代码(一行一行) | 这一行在干什么 |
|---|---|
| require([ | 引入工具(跟 Site.js 的 define 类似) |
| "csi/locale" | 只要本地化工具 |
| ], function(locale) { | 给它起名 locale |
| locale.addTypes({ | 往翻译表里加东西 |
| "Style": { | 对象类型:款式 |
| "CntColorway": "\u914d\u8272\u6570\u91cf\uff08\u7ec3\u4e60\uff09", | 字段 CntColorway 显示「配色数量(练习)」——\u 开头的是中文的编码写法,防乱码 |
| "Action": { | 这个对象的按钮 |
| "C8_ProductApproval": "\u4ea7\u54c1\u5ba1\u6279", | = 产品审批 |
| "C8_ReviewApproval": "\u5ba1\u6838\u901a\u8fc7" | = 审核通过。最后一项不带逗号 |
| } | |
| } | |
| }); | |
| }); |
| 代码(一行一行) | 这一行在干什么 |
|---|---|
| "Season":{ | 季节对象 |
| "View":{ | 它的视图 |
| "AJ_Season_CompetitiveStyles":"AJ_Season_CompetitiveStyles", | 先原样注册(右边先写 Id 本身) |
| "AJ_SeasonBOMList":"Season BOM List", | 或者直接给英文名 |
| } | |
| }, |
课件流程:先在 en.js 注册 Key → Update → 去 C8 的「本地化 → 视图」页面就能搜到这个 Key → 在页面上翻成中文。也就是说中文可以在 C8 界面里翻,不一定写死在 en.js。
| 代码(一行一行) | 这一行在干什么 |
|---|---|
| "PartMaterial":{ | |
| "Path":{ | 路径翻译 |
| "Child:__Parent__/Child:__Parent__/Child:__Parent__":"", | 右边空字符串 = 清空路径名,列标题只显示字段名 |
| "Child:__Parent__/Child:__Parent__/Child:__Parent__/Child:Category1":"", | |
| "Child:Actual":"" | |
| } | |
| }, |
| 代码(一行一行) | 这一行在干什么 |
|---|---|
| "SupplierRequest":{ | |
| "View":{ "AJ_FrozenStyleSamples":"AJ FrozenStyleSamples" }, | 同一个对象下 View 和 Action 并列 |
| "Action":{ "AJ_AddDataPackage":"AJ AddDataPackage" } | |
| }, |
直接写在对象下面,如上面的 "CntColorway": "…"。
C8_ReviewApproval。原因是 en.js 在 Notepad++ 里没保存(标题栏路径前有 *)。Ctrl+S → 重新 Update 后显示「审核通过」。先查保存,别先怀疑浏览器缓存。每个汉字一个 \uXXXX。例:审 = \u5ba1,核 = \u6838,通 = \u901a,过 = \u8fc7。可以让我转,或在浏览器控制台输入 escape("审核通过") 再把 %u 换成 \u。
出处:带教同事《箱包属性信息整理 V1.0》、H厂.zip、会议纪要 10-08、课件 5《前端开发 xml》、课件 6《js》、知识库 C8配置规则_7.8.1。