Js-beautify: { "brace_style": "preserve-inline" } tidak berfungsi seperti yang diharapkan dengan parameter fungsi multiline

Dibuat pada 24 Okt 2018  ·  4Komentar  ·  Sumber: beautify-web/js-beautify

Deskripsi

Hai, pertama - tama

Saya punya masalah ketika saya menggunakan argumen fungsi multiline yang berisi objek:

// This is working OK for me and it is very readable
myFunc('myString',
    myFunc2(),
    andSoOn());

Keluaran yang Diharapkan

Tetapi ketika saya mencoba:

// This is working OK for me and it is very readable
myFunc('myString',
    { myProp: true }, // I have just insterted this object
    andSoOn());

Keluaran Sebenarnya

Semua diformat ulang dalam satu baris...

myFunc('myString', { myProp: true }, andSoOn());

Saya cukup yakin ini ada hubungannya dengan aturan { "brace_style": "preserve-inline" }.

Lingkungan Hidup

OS: Linux Mint
Editor kode: VSCode

Pengaturan

Contoh:

{
    "editor": {
        "formatOnSave": true
    },
    "brace_style": "collapse,preserve-inline"
}

Terima kasih lagi ;)

javascript bug

Semua 4 komentar

Ini adalah pengaturan collapse yang menarik kurung kurawal terbuka kembali ke baris sebelumnya.

Tetapi dapat dikatakan bahwa preserve-inline harus mengesampingkan itu. Bagian yang sulit adalah bahwa beautifier tidak dapat mengetahui apakah blok akan sejajar sampai mencapai ujungnya. Itu sulit dalam desain saat ini.

Ok, saya sudah mencoba dengan konfigurasi:

{
    "brace_style": "none,preserve-inline"
}

Dan hasilnya sama... juga saya pikir ini hanya terjadi dalam konteks fungsi params, semua kasus lainnya baik-baik saja, semoga saya punya waktu untuk memeriksanya.

Hai, bagi mereka yang mencari solusi, berikut adalah solusinya:

myFunc( //
    { myProp: true }, //
    { myProp: true }, //
    { myProp: true });

Ketika saya memberikan komentar kosong, itu tidak akan diformat ulang menjadi satu baris. Setidaknya di VScode. Itu tidak membuat kurang lisible dan mudah dilepas di seluruh proyek dengan pencarian dan penggantian ( //\n )

Semoga bisa membantu...

@sebRomeo
Aduh. Saya senang Anda menemukan pekerjaan di sekitar tetapi itu adalah pekerjaan yang menyakitkan.
Untuk memperjelas "none,preserve-inline" harus berfungsi jadi saya mengubah ini menjadi bug.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat