Less.js: Nomor baris salah pada pemilih peta sumber - chrome melaporkan posisi elemen pertama, bukan elemen terakhir

Dibuat pada 14 Agu 2013  ·  5Komentar  ·  Sumber: less/less.js

Less berikut akan mengarah ke baris html>body form meskipun definisinya secara eksplisit untuk input .
Namun, ini akan berfungsi dengan benar saat menggunakan operator & , tetapi sulit untuk mengubah semua definisi yang kurang seperti itu

html>body form  {

    input {
        color: cyan !important;
    }

    & input {
        background: yellow !important;
    }
}

line bug

Saya pikir ini dapat diperluas ke operator lain yang didukung lebih sedikit, tetapi tidak pernah kurang, baik kosong atau operator apa pun harus didukung dengan benar oleh peta sumber, karena ini adalah kode yang lebih sedikit yang valid.

bug medium priority

Komentar yang paling membantu

catatan: penyelesaian dari #1715 adalah mengontrol dan mengklik properti bukan pemilih.
catatan 2: chrome tidak akan memperbaikinya sehingga harus ditangani lebih sedikit, mungkin menemukan indeks elemen terakhir? dalam pemilih

Semua 5 komentar

Saya pikir ini karena less sebenarnya menandai bagian-bagian berbeda dari pemilih yang berasal dari tempat yang berbeda.. jadi ini memberi tahu chrome bagian pertama dari pemilih berasal dari baris 3 dan bagian kedua dari baris 9. Ketika less menggunakan & itu benar-benar merusak implementasi dan less hanya memberi tahu chrome tentang bagian ke-2.

Namun mengingat informasi di chrome sangat samar, kami mungkin hanya menampilkan informasi dari bagian terakhir pemilih.

bug ini sekarang ada di bug chromium: https://code.google.com/p/chromium/issues/detail?id=287382

catatan untuk diri sendiri: dapat diselesaikan dengan mengganti fileinfo sebelum setiap jalur dikeluarkan. juga perlu memikirkan perpanjangan di mana pemilih tengah diganti - jalur dibuat karena perpanjangan sehingga perpanjangan adalah hal yang penting.

menandai ini serendah sekarang karena Anda selalu dapat menggulir ke bawah .. setidaknya memberi Anda petunjuk .. kecuali @dotnetwise Anda memiliki alasan mengapa ini menyebabkan masalah besar.

catatan: penyelesaian dari #1715 adalah mengontrol dan mengklik properti bukan pemilih.
catatan 2: chrome tidak akan memperbaikinya sehingga harus ditangani lebih sedikit, mungkin menemukan indeks elemen terakhir? dalam pemilih

Saya telah menguji kode contoh dari: http://stackoverflow.com/questions/27983598/css-source-maps-doesnt-report-the-correct-line-when-using-nested-selectors

#main {
max-width: 500px;
color: white;
.sub-container {
color: blue;
}
}

Saya menemukan bahwa masalahnya tidak hanya terjadi di chrome tetapi juga di firefox. Kemudian saya mencoba mengkompilasi kode dengan gulp-less dan gulp-sourcemap (di mana saya berharap gulp-sourcemap menggunakan generator sourcemap yang berbeda). Tegukan membangun tidak memecahkan masalah juga.
Ketika saya mengkompilasi kode yang sama dengan sass, peta sumber yang dihasilkan menunjuk dengan benar ke 4 di chrome dan FF.

Di sisi lain Less memiliki nomor baris yang benar di beberapa titik (dengan --line-numbers=comments):

/* line 1, /t.less */
#main {
  max-width: 500px;
  color: white;
}
/* line 4, /t.less */
#main .sub-container {
  color: blue;
}

Ya, tetapi hanya untuk bukan "aturan bersarang"

Jika Anda menyarangkan sesuatu dalam aturan besar, maka semua baris peta sumber akan mengarah ke atasnya.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat