0

我可以翻译 python 和 html 文件中的字符串。但是当我翻译 JavaScript 字符串时,我在浏览器控制台中得到这个错误:

未捕获的 ReferenceError:_ 未定义

我的 setup.py:

message_extractors={'wiki20': [
        ('**.py', 'python', None),
        ('templates/**.html', 'genshi', None),
        ('public/javascript/index.js', 'javascript', None),
        ('public/**', 'ignore', None)
]},

JavaScript 文件内容:

$("#bulbunu2").html(_('jquery two add this..! bla2'));

当我运行时python setup.py extract_messages,我在 .pot 文件中看到 js 字符串,(命令生成 JavaScript 字符串)但浏览器给出错误。

我怎么解决这个问题?

4

1 回答 1

1

TurboGears 本身不提供 javascript gettext 库,在您收集和翻译字符串之后,您可能已经这样做了,您将需要 javascript 库来读取 .po 文件和 javascript 库来翻译您的字符串。

您可以使用https://www.npmjs.com/package/po2json读取.po文件并将其转换为JSON,然后您可以使用http://slexaxton.github.io/Jed/_()或函数本身的任何其他翻译库。

于 2015-01-18T19:35:16.990 回答