建议:在重构时支持额外的文件命名规范。
🔍 搜索词
moveToNewFile move to file "move to a new file"
✅ 可实现性检查清单
我的建议满足以下准则:
- 这不会对现有的TypeScript/JavaScript代码造成破坏性的更改
- 这不会改变现有JavaScript代码的运行时行为
- 这可以在不根据表达式的类型发出不同的JS的情况下实现
- 这不是一个运行时特性(例如库功能、JavaScript输出的非ECMAScript语法、JS的新语法糖等)
- 这个特性将与TypeScript's Design Goals的其他部分保持一致。
⭐ 建议
在tsconfig.json中指定项目的文件命名规范,并使用规则here。
📃 动机示例
Angular项目使用文件名约定some-example.component.ts。重构操作“移动到新文件”使用约定SomeNewFile.ts。理想情况下,应该有一种方法来指定新文件的命名约定。在这种情况下,some-new-file.ts将是理想的结果。
💻 用例
- 在被使用的同一个文件中创建一个TS接口,命名为SomeExampleInterface
- 使用VS Code中的“移动到新文件”提取接口
- 注意创建的文件是SomeExampleInterface.ts,需要将其重命名为some-example-interface.ts以遵循项目命名约定
9条答案
按热度按时间sqxo8psd1#
如果能得到支持,那就太好了!
yiytaume2#
为了节省其他人寻找这个问题的时间。
相关:$x_{1e0f1}x$
pprl5pva3#
这个问题已经解决了。您可以通过"Move to File",然后选择任意文件名,再输入新的文件路径来实现。
move-to-file.mov
pbossiut4#
这个问题已经解决了。您可以通过"Move to File",然后"Enter a new file path"来选择任意文件名。
move-to-file.mov
我不会说它已经完成了。您需要输入文件名,但原始请求是关于添加文件名约定的,所以您可以更快地进行重构而无需输入。
bcs8qyzn5#
@BartaG512允许用户指定文件名似乎是解决我最初报告问题的优雅且令人满意的方法。如果您对该解决方案不满意,请随时打开一个新问题。
m1m5dgzv6#
这应该重新打开,因为这并没有解决OP中提到的问题。
fdx2calv7#
我总是希望我的文件名是kebab case版本的函数名。正如所说,解决方案与“移动到新文件->重命名”几乎没有什么不同。事实上,使用自动补全时更糟糕,因为很容易不小心将文件移动到一个具有相似名称的现有文件中。
mwngjboj8#
这正是我想要的@chad-schwab。因为我经常使用React,希望我的组件在代码中首字母大写,但在文件名中使用kebab case。
piah890a9#
重新开放,这对我来说不再是问题,但似乎对其他人仍然是一个问题。我会让资源和时间更多的公司来解决这个问题 😮💨