Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/52.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在rails应用程序中通过javascript引用yaml文件中的字符串?_Javascript_Ruby On Rails_Yaml - Fatal编程技术网

如何在rails应用程序中通过javascript引用yaml文件中的字符串?

如何在rails应用程序中通过javascript引用yaml文件中的字符串?,javascript,ruby-on-rails,yaml,Javascript,Ruby On Rails,Yaml,我需要安装一些东西才能让它工作吗 我有一个Rails应用程序,它利用用haml编写的视图和一些基于javascript的小部件 我已经通过引用en.yml文件抽象了haml文件中的所有字符串。(很快,每种语言都会有一个yml文件,非常令人兴奋!) 剩下的字符串只有javascript小部件中的字符串。我怎样才能抽象出这些?有语法吗?我需要宝石吗?我真的不知道如何查找它,因为我不确定我是否用正确的编程术语描述了它。您可以预处理任何javascript文件,只需在文件名后面附加.erb或.haml

我需要安装一些东西才能让它工作吗

我有一个Rails应用程序,它利用用haml编写的视图和一些基于javascript的小部件

我已经通过引用en.yml文件抽象了haml文件中的所有字符串。(很快,每种语言都会有一个yml文件,非常令人兴奋!)


剩下的字符串只有javascript小部件中的字符串。我怎样才能抽象出这些?有语法吗?我需要宝石吗?我真的不知道如何查找它,因为我不确定我是否用正确的编程术语描述了它。

您可以预处理任何javascript文件,只需在文件名后面附加
.erb
.haml

例如,如果您有如下内容:

// app/assets/javascript/main.js
console.log('some text');
// app/assets/javascript/main.js.erb
console.log("<%= j I18n.t('some.text') %>");

// config/locales/en.yml
en:
  some:
    text: Some text
您可以将其本地化如下:

// app/assets/javascript/main.js
console.log('some text');
// app/assets/javascript/main.js.erb
console.log("<%= j I18n.t('some.text') %>");

// config/locales/en.yml
en:
  some:
    text: Some text
//app/assets/javascript/main.js.erb
控制台日志(“”);
//config/locales/en.yml
嗯:
一些:
文本:一些文本

或者,您可以查看。

您可以预处理任何javascript文件,只需在文件名后附加
.erb
.haml

例如,如果您有如下内容:

// app/assets/javascript/main.js
console.log('some text');
// app/assets/javascript/main.js.erb
console.log("<%= j I18n.t('some.text') %>");

// config/locales/en.yml
en:
  some:
    text: Some text
您可以将其本地化如下:

// app/assets/javascript/main.js
console.log('some text');
// app/assets/javascript/main.js.erb
console.log("<%= j I18n.t('some.text') %>");

// config/locales/en.yml
en:
  some:
    text: Some text
//app/assets/javascript/main.js.erb
控制台日志(“”);
//config/locales/en.yml
嗯:
一些:
文本:一些文本

或者,您可以查看。

javascript yaml解析器您需要解析yaml并使用js获取字符串。。var doc=jsyaml.load('问候语:hello\nname:world');javascript yaml解析器您需要解析yaml并使用js获取字符串。。var doc=jsyaml.load('问候语:hello\nname:world');我今天要试试这个。谢谢(对假期延迟表示抱歉,谢谢你)一旦我测试了这个,我会评论结果,同时,我会假设你是正确的。谢谢您需要使用javascript转义/引用帮助程序,否则您的文本(如果包含
)将产生错误。您是对的,我已更正了答案。有关javascript转义的更多参考信息,请参见:我今天将尝试此功能。谢谢!!(很抱歉假期延迟,谢谢)一旦我测试了这个,我会用结果进行评论,同时,我会假设你是正确的。谢谢!!你需要使用javascript转义/引用帮助程序,否则你的文本(如果包含
)会产生错误。你是对的,我已经更正了答案。有关javascript转义的更多参考可在此处找到: