V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
wy1993
V2EX  ›  问与答

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

  •  
  •   wy1993 · Jun 2, 2019 · 6761 views
    This topic created in 2527 days ago, the information mentioned may be changed or developed.

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

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

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

    Windows 世界观无此现象。我不知道 eslint 是否会先做换行标准形
    geelaw
        9
    geelaw  
       Jun 3, 2019 via iPhone
    @geelaw *是否会先化换行为标准形再判断。

    另抄送 @akatquas #2 见 #8
    Almost20
        10
    Almost20  
       Jun 3, 2019
    eslint 插件有个 autoFixOnSave 可以根据你的配置的 eslint 规则在保存时自动格式化代码。
    auin
        11
    auin  
       Jun 3, 2019
    @akatquas #2 "newline at end of file" 是 GNU 提出的,可能以前编译器比较傻吧,反正现在是个默认标准
    66beta
        12
    66beta  
       Jun 3, 2019 via Android
    你可以单独配置每条 eslint 规则啊,只要你高兴
    cooljs
        13
    cooljs  
       Jun 3, 2019
    首选项--设置,搜索 end of line,看有没有相关陪孩子
    cooljs
        14
    cooljs  
       Jun 3, 2019
    配置
    Vegetable
        15
    Vegetable  
       Jun 3, 2019
    我也非常希望前端的 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  
       Jun 3, 2019
    @Vegetable vetur 自带一个残疾版 eslint,不能配置规则,你也可以选择在 vetur 的设置里面关闭它(validation script),然后自己装一个完全体的 eslint 插件。
    dontwanttologin
        17
    dontwanttologin  
       Jun 3, 2019
    在配置中加上 "files.insertFinalNewline": true
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   767 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 54ms · UTC 21:04 · PVG 05:04 · LAX 14:04 · JFK 17:04
    ♥ Do have faith in what you're doing.