Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/381.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
Javascript 为ruby HAML中的过滤器指定选项_Javascript_Ruby_Filter_Haml_Indentation - Fatal编程技术网

Javascript 为ruby HAML中的过滤器指定选项

Javascript 为ruby HAML中的过滤器指定选项,javascript,ruby,filter,haml,indentation,Javascript,Ruby,Filter,Haml,Indentation,有没有办法向HAML过滤器添加选项(HTML属性) 我想做这样的事情: :javascript{:'data-turbolinks-eval' => 'false', :foo => 'bar'} if(someCondition){ doSomething(); } 结果是: <script 'data-turbolinks-eval'='false' 'foo'='bar'> if(someCondition){ doSomething(

有没有办法向HAML过滤器添加选项(HTML属性)

我想做这样的事情:

:javascript{:'data-turbolinks-eval' => 'false', :foo => 'bar'}
  if(someCondition){
    doSomething();
  }
结果是:

<script 'data-turbolinks-eval'='false' 'foo'='bar'>
  if(someCondition){
    doSomething();
  }
</script>
缺点是,除非使用:javascript过滤器,否则无法在HAML中缩进JS。几行也可以,但很快就会变得一团糟


我很清楚,在大多数情况下,如果您在HAML模板中使用了一个复杂的脚本,这意味着您做错了什么,这不是我想要的答案。

没有办法像这样将额外属性传递给
:javascript
过滤器。但是,您可以使用
:plain
过滤器和普通的
脚本
标记来缩进javascript代码:

%script{:'data-turbolinks-eval'=>false',:foo=>bar'}
:普通
if(someCondition()){
doSomething();
}
产生:


if(someCondition()){
doSomething();
}
%script{:'data-turbolinks-eval' => 'false', :foo => 'bar'}
  if(someCondition){
  doSomething();
  }