是否有 VS Code 的 JSX emmet 围绕 { } 中的 className 而不是引号
Is there a JSX emmet for VS Code that surrounds className in { } instead of quotes
给定一个 emmet 缩写:
div.layoutStyles.container
有没有办法制作:
<div className={layoutStyles.container}></div>
而不是<div className="layoutStyles container"></div>
您可以使用 Replace Rules 和键盘快捷键
添加到您的 settings.json
(全局或工作区)
"replacerules.rules": {
"class-brace": {
"find": ["(?<= className=)\"([^<>\"]+)\""],
"replace": ["{}"]
},
"class-points": {
"find": ["(?<= className=){([^\" <>]+) ([^\"<>]+)}"],
"replace": ["{.}"]
}
},
"replacerules.rulesets": {
"class-brace-point": {
"rules": [
"class-brace",
"class-points",
"class-points",
"class-points"
]
}
如果您的标签可能超过 4 个 类,您可以添加更多 "class-points"
或多次按键盘快捷键。
添加调用规则集的键盘快捷键
{
"key": "ctrl+f5", // or any other key combo
"when": "editorTextFocus",
"command": "replacerules.runRuleset",
"args": {"rulesetName": "class-brace-point"}
}
您可以制作自定义的 emmet 代码段,但工作流程与常规代码段相同 - 尽管了解这项技术也很好。在 snippets.json:
{
"html": {
"snippets": {
"divx" : "<div className = {}></div>"
}
}
有关如何创建自定义 emmet 片段的更多详细信息,请参阅 Link+tab shortcut Emmet on VSCode - How can I get the "type" to be included in this? - 并在您对其进行更改时重新加载。
然后,就像常规代码段一样,您从前缀开始(这里是我做的 divx
),然后输入您的 class 信息。
另一种方法是使用 Hyper Snips,另一种形式的片段。
有关设置该扩展程序的详细信息,请参阅 。
然后,在您的 javascriptreact.hsnips 文件中:
snippet `div\.([^ ]+) ` "expand to jsx className" A
<div className={``rv=m[1]``}></div>
endsnippet
A space 实际上充当触发器,您可以在 className
中拥有任意数量的项目。演示:
给定一个 emmet 缩写:
div.layoutStyles.container
有没有办法制作:
<div className={layoutStyles.container}></div>
而不是<div className="layoutStyles container"></div>
您可以使用 Replace Rules 和键盘快捷键
添加到您的 settings.json
(全局或工作区)
"replacerules.rules": {
"class-brace": {
"find": ["(?<= className=)\"([^<>\"]+)\""],
"replace": ["{}"]
},
"class-points": {
"find": ["(?<= className=){([^\" <>]+) ([^\"<>]+)}"],
"replace": ["{.}"]
}
},
"replacerules.rulesets": {
"class-brace-point": {
"rules": [
"class-brace",
"class-points",
"class-points",
"class-points"
]
}
如果您的标签可能超过 4 个 类,您可以添加更多 "class-points"
或多次按键盘快捷键。
添加调用规则集的键盘快捷键
{
"key": "ctrl+f5", // or any other key combo
"when": "editorTextFocus",
"command": "replacerules.runRuleset",
"args": {"rulesetName": "class-brace-point"}
}
您可以制作自定义的 emmet 代码段,但工作流程与常规代码段相同 - 尽管了解这项技术也很好。在 snippets.json:
{
"html": {
"snippets": {
"divx" : "<div className = {}></div>"
}
}
有关如何创建自定义 emmet 片段的更多详细信息,请参阅 Link+tab shortcut Emmet on VSCode - How can I get the "type" to be included in this? - 并在您对其进行更改时重新加载。
然后,就像常规代码段一样,您从前缀开始(这里是我做的 divx
),然后输入您的 class 信息。
另一种方法是使用 Hyper Snips,另一种形式的片段。
有关设置该扩展程序的详细信息,请参阅
然后,在您的 javascriptreact.hsnips 文件中:
snippet `div\.([^ ]+) ` "expand to jsx className" A
<div className={``rv=m[1]``}></div>
endsnippet
A space 实际上充当触发器,您可以在 className
中拥有任意数量的项目。演示: