vscode里面的代码小括号问题

升序里面return 后面的代码有两个小括号(),也就是(a.originPrice - a.price) - (b.originPrice - b.price),可以看第一块代码块,按ctrl+s保存代码后,第一个()就没了,变成a.originPrice - a.price - (b.originPrice - b.price),可以看第二个代码块,是什么原因,怎么保存代码后不让他删除第一个小括号?


if (id === 'discound') {
                //使用return 后面的else可以省略
                this.list.sort((a, b) => {
                    //a的优惠 a.originPrice - a.price
                    //b的优惠 b.originPrice - b.price
                    //升序
                    return (a.originPrice - a.price) - (b.originPrice - b.price)
                    //降序,就是在前面乘-1
                    // return (b.originPrice - b.price) - (a.originPrice - a.price)
                })
            }
if (id === 'discound') {
                //使用return 后面的else可以省略
                this.list.sort((a, b) => {
                    //a的优惠 a.originPrice - a.price
                    //b的优惠 b.originPrice - b.price
                    //升序
                    return a.originPrice - a.price - (b.originPrice - b.price)
                    //降序,就是在前面乘-1
                    // return (b.originPrice - b.price) - (a.originPrice - a.price)
                })
            }

你把括号里面的内容定义成变量试试看

真诡异。。竟然能自动删代码。重启一下vs试试,自动去括号这种情况不应该出现的

这么诡异的事情,很大可能是你配置的格式化导致的,编辑器配置了保存自动格式化,然后格式化可能有这方面的校验,然后给你自动去掉了,似乎只有这一种可能

应该是你安装了格式化插件。不影响 就像数学题中 (a-b)-(b-c)第一个括号去了也不会影响