TypeScript 组织导入应该删除导入中的空行,

anauzrmj  于 4个月前  发布在  TypeScript
关注(0)|答案(9)|浏览(51)

TypeScript版本: 2.9.0-dev.20190327
搜索词:

  • 整理导入
    代码
  1. 对于js:
import { x } from 'x';

import { y } from 'y';

console.log(x, y)
  1. 运行整理导入。

预期行为:

导入中的空行被删除

import { x } from 'x';
import { y } from 'y';

console.log(x, y)

实际行为:

空行保留但移到导入的末尾:

import { x } from 'x';
import { y } from 'y';


console.log(x, y)
sf6xfgos

sf6xfgos1#

为了确保,我是新人,社区是否批准在这个事件上提供帮助?即使没有标签 😕

jaxagkaj

jaxagkaj2#

抱歉,我的自动完成功能故障了。我是新来的,我们能帮忙解决这个问题吗?即使没有标签?

fwzugrvs

fwzugrvs3#

出于兴趣:如果在 import 之间还有其他内容,它应该如何表现?我通常将我的代码结构分为两个部分的测试套件:1.与框架相关的导入,2.与组件相关的导入,例如:

import { assert, expect, should } from "chai";
// ... more framework-related imports
// enable the should interface with sinon
should();

// ^^^ --- I want the space here --- vvv

import * as nodeUrl from "url";
// ... more component-related imports
92vpleto

92vpleto4#

我也会这样做,在我的常规文件中也是如此,我认为保持👍是很酷的。

z8dt9xmd

z8dt9xmd5#

我同意当前将空行移动到导入的末尾的行为并不有益。但通常情况下,移除它们也不是总是期望的。我喜欢使用空行来分组我的导入。例如,一个导入块可能与数据库相关,另一个与数学库的功能相关。也许通过配置标志可以可选地移除空行?

xeufq47z

xeufq47z6#

我也将我的导入分组,并在它们之间留有空格(库/框架与我自己的代码)。
保留这些分组是有帮助的,但将空行移到底部从来都没有用。因此,我认为一个合理的行为是保留空间的标志。如果为真,则像往常一样修剪导入,但仅在连续块内进行排序,并保留任何注解/空行。
如果preserveSpace为false,则它的行为与现在相同,但删除空行而不是将它们收集到底部。

58wvjzkj

58wvjzkj7#

+1,添加一个标志以允许保留空格/组。

gorkyyrv

gorkyyrv8#

#41494#48330 之后,我们不再在组之间移动导入,因此原始的复现在这里不再有效。也就是说,我们不会删除组之间的空行,所以这并不是完全可关闭的。

r8uurelv

r8uurelv9#

在我的经验中,手动组织导入通过分组是一种维护负担,价值很小,并创造了另一个需要争论的事情。如果工具支持它,那么会更容易一些,但特别是当还根据团队或个人对其产生的重要性的任意层次进行排序时,就会变得非常繁琐。

相关问题