首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >HTML自动化脚本

HTML自动化脚本
EN

Stack Overflow用户
提问于 2017-10-31 03:53:31
回答 1查看 43关注 0票数 1

当我作为前端开发人员工作时,我遇到了一个需要花费大量时间和资源的主要问题,那就是我的文档中的语言转换。

一个例子:我写了一封邮件,它必须从英语转换成14种其他语言。正如你可以想象的那样,它既无聊又耗时。

我正在寻找一个解决方案,但除了吞噬替换之外什么也找不到,这可能是有用的。下面是一个简短的示例。

代码语言:javascript
运行
复制
var replace = require('gulp-replace');

gulp.task('templates', function(){
  gulp.src(['file.txt'])
    .pipe(replace('foo', function(match) {
      // Replaces instances of "foo" with "oof" 
      return match.reverse();
    }))
    .pipe(gulp.dest('build/'));
});

我的想法是编写一个接受HTML文件的吞咽任务,其中一个文件包含所有翻译内容,另外13个文件包含以下标记:

代码语言:javascript
运行
复制
<!-- REPLACE HEADER -->

在应该替换文本的地方,它采用行的形式,translations.html将其粘贴到标记位置,然后移动到另一个文件,并对下一行执行相同的操作。

如果任何有用的信息能帮助我实现自动化,我将不胜感激。

EN

Stack Overflow用户

发布于 2017-10-31 20:00:12

我想推荐一些与javascript中的GNU gettext类似的东西。没有官方的js gettext库,但是你可以使用jquery i18n或者使用你自己的翻译机制:

将翻译放在JavaScript结构中:

代码语言:javascript
运行
复制
var app = {}
var app.translations = {
  en:  { hello: "Hello!"
       , bye:   "Goodbye!"
       }
, de:  { hello: "Guten Tag!"
       , bye:   "Auf Wiedersehen!"
       }
};

然后,您可以在JavaScript中读取转换字符串:

代码语言:javascript
运行
复制
var curentLanguage = document.documentElement.lang || "en";
app.lang = app.translations[ currentLanguage ] || app.translations.en;

您可以使用如下代码:

代码语言:javascript
运行
复制
alert( app.lang.hello );
票数 0
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47023179

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档