V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
wy1993
V2EX  ›  问与答

VScode 编辑 js 代码,每次保存时都会去除最后的空行,但是 eslint 检查时要求最后有空行

  •  
  •   wy1993 · 2019-06-02 22:17:43 +08:00 · 5830 次点击
    这是一个创建于 2002 天前的主题,其中的信息可能已经有所发展或是发生改变。

    这个设置找了很久都没有找到,,各位大佬有告诉我在哪里设置的吗

    17 条回复    2019-06-03 13:49:14 +08:00
    wy1993
        1
    wy1993  
    OP
       2019-06-02 22:17:50 +08:00
    谢谢
    akatquas
        2
    akatquas  
       2019-06-02 23:35:50 +08:00 via iPhone
    讲真,eslint 的末尾空行有什么用,美观?
    morethansean
        3
    morethansean  
       2019-06-03 00:15:15 +08:00
    保存时为啥会自动去空行?
    Trim21
        4
    Trim21  
       2019-06-03 00:29:50 +08:00 via Android
    我记得有一个 ESLint 插件,可以设置 fix on save 的,然后关掉内置格式化工具在保存时候的格式化就好了。
    noe132
        5
    noe132  
       2019-06-03 01:12:16 +08:00
    使用 editorconfig.
    lijsh
        6
    lijsh  
       2019-06-03 01:38:53 +08:00
    估计 editorconfig 或者 prettier 和 eslint 冲突了。
    chinvo
        7
    chinvo  
       2019-06-03 01:43:20 +08:00 via iPhone
    设置里面搜 trim,找 trim ending line 设置成关闭
    geelaw
        8
    geelaw  
       2019-06-03 04:14:44 +08:00 via iPhone   ❤️ 1
    答案是从一个全新的 VS Code installation 开始一步步配置你的环境,直到你发现执行某个步骤之后的 VSC 会帮你删除最后的换行符为止——一个全新的 installation 并不会帮你做这件事情。

    另外,在 Unix 世界观里,\n 并不是“换行”而是“结束一行”,在新的字符出现之前没有新的一行,也会觉得文本文件最后没有 \n 是不完整的,因为最后一行没有被结束(除非一行也没有、0 字节的文件)。

    Windows 世界观无此现象。我不知道 eslint 是否会先做换行标准形
    geelaw
        9
    geelaw  
       2019-06-03 04:15:51 +08:00 via iPhone
    @geelaw *是否会先化换行为标准形再判断。

    另抄送 @akatquas #2 见 #8
    Chrisssss
        10
    Chrisssss  
       2019-06-03 08:40:00 +08:00
    eslint 插件有个 autoFixOnSave 可以根据你的配置的 eslint 规则在保存时自动格式化代码。
    liuxey
        11
    liuxey  
       2019-06-03 08:52:21 +08:00
    @akatquas #2 "newline at end of file" 是 GNU 提出的,可能以前编译器比较傻吧,反正现在是个默认标准
    66beta
        12
    66beta  
       2019-06-03 09:06:35 +08:00 via Android
    你可以单独配置每条 eslint 规则啊,只要你高兴
    cooljs
        13
    cooljs  
       2019-06-03 11:11:37 +08:00
    首选项--设置,搜索 end of line,看有没有相关陪孩子
    cooljs
        14
    cooljs  
       2019-06-03 11:11:44 +08:00
    配置
    Vegetable
        15
    Vegetable  
       2019-06-03 11:24:16 +08:00
    我也非常希望前端的 lint 能有一个比较简单的套路
    vscode 的格式化,eslint 插件,项目的 eslintrc,editorconfig,pretter*
    在 vscode 里边写 vue 的时候,.vue 文件的究竟是哪个插件(vetur?eslint?vscode-eslint?prettier?)在格式化?templage/script/style 三个部分是同一个插件还是分开的?

    这些可能都比较基础的问题,搞得我写起代码来非常难受,我只是想用一下 vue-admin-template 写个后台而已,作为一个后端我搞清楚了 vuex,搞清楚了 mock,搞清楚了 router,却搞不清楚格式化...配置被搞的一团糟心累一 p,对比一下,我选择只能关掉项目的 eslint,解决提交冲突我更熟练一点..
    shintendo
        16
    shintendo  
       2019-06-03 11:40:56 +08:00
    @Vegetable vetur 自带一个残疾版 eslint,不能配置规则,你也可以选择在 vetur 的设置里面关闭它(validation script),然后自己装一个完全体的 eslint 插件。
    dontwanttologin
        17
    dontwanttologin  
       2019-06-03 13:49:14 +08:00
    在配置中加上 "files.insertFinalNewline": true
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5030 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 09:52 · PVG 17:52 · LAX 01:52 · JFK 04:52
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.