reactjs - vscode - 基于 react 和 react native 加载代码片段
问题描述
有没有办法根据我是否正在开发来加载单独的片段集,例如,一个反应项目与一个反应本机项目?
基本上,当我点击我的 keybinding 时(ctrl+shift+b)
,它应该填写我的Button
片段,每个片段都不同:
反应:"<button className=''>$1</button>",
反应原生:"<Button title='$1' onPress={()=>{}}/>",
现在我有一个愚蠢的解决方法,我将.jsx
其用于 Web 组件和.js
react-native 组件,然后相应地为每种语言模式配置我的片段,但我更喜欢.jsx
两者都使用。
解决方案
此解释涉及所有文件类型/片段,示例是添加
react
片段。
在 VSCode 中,片段是根据文件关联加载的。您可以在底栏检查当前文件关联。
现在您需要将片段配置为所需的文件类型,为此您需要files.associations
在settings.json
.
文件 -> 首选项 -> 设置 -> 打开设置 (JSON)
"files.associations": {
"*.react.js": "javascriptreact",
"*.stories.js": "javascriptreact",
"*.action.js": "javascriptreact",
"*.reducer.js": "javascriptreact",
"*.styles.js": "javascriptreact",
"*.jsx": "javascriptreact",
"*.js": "javascript"
}
从这一点来看,文件名 likeMyComponent.react.js
将与javascriptreact
类型相关联。
剩下的就是添加您的代码段以javascriptreact
键入:
查看 -> 命令面板 -> 首选项:配置用户片段
并选择一个文件类型(如果存在,javascriptreact.json
或创建一个新的文件类型,如javascriptreactnative
)。
所选类型中的所有片段都将关联并自动建议。
例如,下一个片段javascriptreact.json
仅适用于React
上面配置的文件:
"React Fragment": {
"prefix": "<>",
"body": [
"<>",
"$1",
"</>"
],
"description": "Insert React Fragment"
}
总之,您需要单独.jsx
扩展以识别react
and react-native
,例如:*.native.jsx
推荐阅读
- c# - HttpClient长轮询被单独的线程中断
- sql - 设计用户如何创建邀请以供其他人接受并开始并能够完成邀请
- c# - 将 SqlConnection 作为 IDbConnection 返回
- c# - 如何在asp.net mvc中修复404“找不到资源”
- google-apps-script - 删除最后一个非空行之后的所有行
- java - 如何将 HTML 中的 href 值传递给 Thymeleaf?
- python - 从 api dict 响应中获取价值
- caching - .NET Core 下拉 NuGet 包到用户缓存
- python - 作为命令行参数传入时,三重积分函数不起作用
- c# - 在按钮单击时将列表视图中的行分配给字典