Bu kılavuz, aşağıdaki koşulları yerine getiren Lighthouse v2 kullanıcıları içindir:
- Lighthouse'u Düğümden veya komut satırından çalıştırın.
- Lighthouse'un JSON çıkışına güvenin.
Bunlar sizin için geçerli değilse Lighthouse'u çalıştırma iş akışınız büyük ölçüde aynıdır. Yeni özellikler ve değişikliklere genel bir bakış için Lighthouse 3.0 duyurusu sayfasına bakın.
Çağrı değişiklikleri
Lighthouse artık varsayılan olarak simüle edilmiş performans hesaplamaktadır ve kısıtlama ayarları büyük ölçüde değiştirilmiştir.
CLI İşaretleri
Senaryo | v2 İşaretleri | v3 İşaretleri |
---|---|---|
Geliştirici Araçları 3G Kısıtlaması | Yok (varsayılan davranış) | --throttling-method=devtools |
Kısıtlama Yok | --disable-network-throttling --disable-cpu-throttling |
--throttling-method=provided |
Ağ Kısıtlama, CPU Kısıtlama Yok | --disable-cpu-throttling |
--throttling-method=devtools --throttling.cpuSlowdownMultiplier=1 |
Performans Denetimleri Gerçekleştir | --perf |
--preset=perf |
Karma İçerik Denetimleri Yürütme | --mixed-content |
--preset=mixed-content |
Düğüm Modülü
Lighthouse v3'te Düğüm modülü, CLI ile aynı yapılandırma seçeneklerini kabul eder. Bu, v2'de bu seçeneklerin çoğunun göz ardı edilmiş olması, ancak artık Lighthouse'un çalışma şeklini etkileyecekleri açısından kırıcı bir değişiklik.
const fs = require('fs');
const lighthouse = require('lighthouse');
async function run() {
// `onlyCategories` was previously only available as a config setting.
// `output` was previously only available in CLI.
const flags = {onlyCategories: ['performance'], output: 'html'};
const html = (await lighthouse('https://google.com/', flags)).report;
fs.writeFileSync('report.html', html);
}
Çıkış değişiklikleri
JSON çıktısında yeni, üst düzey biçim
Lighthouse v3'ün döndürdüğü JSON nesnesi artık üç üst düzey özellik içeriyor:
lhr
. Denetimlerin sonuçları. "Lighthouse Sonuçlar"ın kısa videosu. Bu, v2'nin en üst düzey nesnesiydi ancak v3, bu nesnenin şeklinde de önemli değişiklikleri beraberinde getiriyor. Sonuç nesnesinde yapılan değişiklikler konusuna bakın.artifacts
. Denetleme sırasında Chrome'dan toplanan veriler. Bu, daha önce LHR'nin özellikleriyle karıştırılıyordu.report
. Dize olarak biçimlendirilmiş HTML/JSON/CSV raporu.
Sonuç nesnesindeki değişiklikler
JSON çıktısında yeni, üst düzey biçimde açıklandığı gibi, denetleme sonuçlarına lhr
mülkü üzerinden erişilemez. v2'de bu nesnenin içeriği, temelde üst düzey JSON çıkışıdır. Ancak bu nesnenin şekli v3'te değişmiştir. Aşağıdaki tabloda tüm değişiklikler listelenmiştir.
- Bir satırın hem v2 hem de v3 sütunlarında değer olması, kodunuzdaki v2 özelliğine yönelik tüm referansları v3 eşdeğeriyle değiştirmeniz gerektiği anlamına gelir.
- Bir satırın v3 sütununda değer yoksa seçenekleriniz Notlar sütununda açıklanır.
- ID gibi öğelerin yer tutucu metni temsil ettiğini unutmayın.
v2 Mülkü | v3-Eşdeğeri | Notlar |
---|---|---|
initialUrl |
requestedUrl |
|
url |
finalUrl |
|
generatedTime |
fetchedTime |
|
reportCategories |
categories |
Diziden anahtarlı nesne olarak değiştirildi. |
reportGroups |
categoryGroups |
|
audits.ID.name |
audits.ID.id |
|
audits.ID.description |
audits.ID.title |
|
audits.ID.helpText |
audits.ID.description |
|
audits.ID.scoringMode |
audits.ID.scoreDisplayMode |
Olası değerler numeric|binary|manual|informative|not-applicable|error olacak şekilde genişletildi.
|
audits.ID.score |
audits.ID.score |
scoreDisplayMode sayısal veya ikili olduğunda puanlar her zaman 0 ile 1 arasında bir sayıdır (0-100 değil). Başarılı/başarısız diye bir kavram olmadığından diğer görüntüleme modlarında puanlar her zaman null değerindedir.
|
audits.ID.displayValue |
audits.ID.displayValue |
Artık dize interpolasyonu için Printf stili bağımsız değişkenler dizisi olabilir. |
audits.ID.debugString |
audits.ID.explanation
audits.ID.errorMessage
audits.ID.warnings
|
debugString değerleri, amaçlarına bağlı olarak yukarıdaki üç özellikten birine dönüştürüldü.
|
audits.ID.details |
audits.ID.details |
Ayrıntıların yapısı daha tüketilebilir hale geldi. .items alanındaki her giriş, any[] yerine güvenilir anahtarlara sahip bir nesnedir.
|
audits.ID.error |
audits.ID.scoreDisplayMode === 'error' |
|
audits.ID.notApplicable |
audits.ID.scoreDisplayMode === 'not-applicable' |
|
audits.ID.informative |
audits.ID.scoreDisplayMode === 'informative' |
|
audits.ID.manual |
audits.ID.scoreDisplayMode === 'manual' |
|
audits.ID.extendedInfo |
Kaldırıldı. Bunun yerine details politikasını kullanın.
|