我有一个Angular.js应用程序,我想开始使用Haml。我的问题是我的一些代码不能正确转换。
我需要输出以下内容:
<form name='userForm' class='admin-form form-horizontal' ng-submit='userForm.$valid && saveUser()' novalidate></form>
因此,在Haml中,我写道:
%form{:class => 'admin-form form-horizontal', :name => 'userForm', :'ng-submit'=>'userForm.$valid && saveUser()'}
但问题是&&
会被转换成&&
,所以:
<form name='userForm' class='admin-form form-horizontal' ng-submit='userForm.$valid && saveUser()' novalidate></form>
我能做些什么来防止这种情况发生?此外,是否可以将Haml中标记的每个属性放在单独的行上?当我尝试这样做时,我也会遇到错误。
发布于 2014-09-09 03:33:12
好的,我通过在Gruntfile haml选项中将no-escape-attrs
设置为true
来使其工作:
haml:
options:
'no-escape-attrs': true
发布于 2014-09-09 03:10:15
您需要将escape_attrs
option设置为false。如何做到这一点将取决于您如何使用Haml,see the docs。
例如,从命令行:
$haml --no-escape-attrs
%form{:class => 'admin-form form-horizontal', :name => 'userForm', :'ng-submit'=>'userForm.$valid && saveUser()'}
产生:
<form class='admin-form form-horizontal' name='userForm' ng-submit='userForm.$valid && saveUser()'></form>
https://stackoverflow.com/questions/25731054
复制相似问题