最近我一直在使用Knockout模板,并且我使用Sublime来完成它。但是我注意到一个问题,当使用需要在块中定义的模板时,就像这样:
<script type="text/html"></script>
它将内容视为Javascript处理,这意味着我错过了很多已安装的HTML工具。我希望它将该内容视为HTML而不是Javascript进行处理;是否有任何设置可以使用来实现此目的?
最近我一直在使用Knockout模板,并且我使用Sublime来完成它。但是我注意到一个问题,当使用需要在块中定义的模板时,就像这样:
<script type="text/html"></script>
它将内容视为Javascript处理,这意味着我错过了很多已安装的HTML工具。我希望它将该内容视为HTML而不是Javascript进行处理;是否有任何设置可以使用来实现此目的?
我成功地找到了答案感谢iamntz在这里;诀窍很简单。对于Sublime Text 3:
Find this line:
<string>(?:^\s+)?(<)((?i:script))\b(?![^>]*/>)</string>
and replace it with this one:
<string>(?:^\s+)?(<)((?i:script))\b(?!([^>]*text/html[^>]*|[^>]*/>))</string>
type
属性以"text/"开头,且不以"javascript"结尾,现在应该正确处理HTML。 - script-javascript
- tag-generic-attribute-meta
- tag-generic-attribute-value
- - match: (?i)(?=text/html(?!{{unquoted_attribute_value}})|'text/html'|"text/html")
+ - match: (?i)(?=text/html(?!{{unquoted_attribute_value}})|'text/html'|"text/html"|"text/x-template")
set:
- script-html
- tag-generic-attribute-meta