所以,我使用了underscore.js模板,我必须将我的html模板放在脚本标签中,就像这样
<script id="contactTemplate" type="text/template">
<img src="{{ photo }}" alt="{{ name }}" />
<h1>{{ name }}<span>{{ type }}</span></h1>
<div>{{ address }}</div>
<dl>
<dt>Tel:</dt><dd>{{ tel }}</dd>
<dt>Email:</dt><dd><a href="mailto:{{ email }}">{{ email }}</a></dd>
</dl>
</script>
但是崇高的文本2正在将内部代码作为常规js进行评估,我该如何改变呢?
提前致谢!
答案 0 :(得分:69)
"Browse Packages"
(菜单项取决于您的平台)。HTML/HTML.tmLanguage
更改此行(我的HTML.tmLanguage
中的第286行):
<string>(?:^\s+)?(<)((?i:script))\b(?![^>]*/>)</string>
到此:
<string>(?:^\s+)?(<)((?i:script))\b(?![^>]*/>)(?!.*type=["']text/template['"])</string>
现在,任何带有type="text/template"
或type='text/template'
的脚本代码都会呈现为html而不是javascript。
答案 1 :(得分:9)
由于修改内置软件包并不简单,安全或可移植(特别是在ST3中),因此我将Matt York's更改拆分为自己的软件包。
它可通过Package Control获得,并在所有平台上支持Sublime Text 2和3。
答案 2 :(得分:3)
对于我们这些使用Sublime Text 3
的人我认为我会将信息整合到更容易找到的内容中,因为没有任何答案或评论直接给我提供了我需要的解决方案。 Matt York的回答
<string>(?:^\s+)?(<)((?i:script))\b(?![^>]*/>)(?!.*type=["']text/(template|html)['"])</string>
您可以在C:\Program Files\Sublime Text 3\Packages
内找到 HTML.sublime-package ,如PAEz所述。
<强>说明强>
<key>begin</key>
.zip
更改为.sublime-package
(确保在执行此操作时Sublime未运行)答案 3 :(得分:1)
对于我们这些使用Sublime Text 3的人来说,请使用插件&#34; PackageResourceViewer&#34;编辑HTML.sublime-package