लाइटहाउस v3 को दूसरी जगह भेजने से जुड़ी गाइड

यह गाइड, लाइटहाउस v2 के उपयोगकर्ताओं के लिए है:

  • नोड या कमांड लाइन से लाइटहाउस को चलाएं.
  • लाइटहाउस के JSON आउटपुट पर भरोसा करें.

अगर आप पर ये बातें लागू नहीं होती हैं, तो लाइटहाउस चलाने का आपका वर्कफ़्लो करीब-करीब एक जैसा ही रहेगा. नए की खास जानकारी के लिए Lighthouse 3.0 का एलान करें सुविधाएँ और बदलाव शामिल हैं.

शुरू करने के लिए किए गए बदलाव

Lighthouse अब डिफ़ॉल्ट रूप से सिम्युलेट की गई परफ़ॉर्मेंस का हिसाब लगाता है. साथ ही, थ्रॉटलिंग की सेटिंग में काफ़ी बदलाव किए गए हैं.

सीएलआई फ़्लैग

स्थिति v2 फ़्लैग v3 फ़्लैग
DevTools 3G थ्रॉटलिंग कोई नहीं (डिफ़ॉल्ट व्यवहार) --throttling-method=devtools
कोई थ्रॉटलिंग नहीं --disable-network-throttling --disable-cpu-throttling --throttling-method=provided
नेटवर्क थ्रॉटलिंग, सीपीयू थ्रॉटलिंग नहीं --disable-cpu-throttling --throttling-method=devtools --throttling.cpuSlowdownMultiplier=1
परफ़ॉर्मेंस ऑडिट चलाएं --perf --preset=perf
मिला-जुला कॉन्टेंट होने की जांच करना --mixed-content --preset=mixed-content

नोड मॉड्यूल

Lighthouse v3 में, नोड मॉड्यूल के पास सीएलआई वाले कॉन्फ़िगरेशन के ही विकल्प उपलब्ध हैं. यह है वर्शन 2 में इनमें से कई विकल्पों को अनदेखा किया गया, जबकि अब वे लाइटहाउस के काम करने का तरीका बदल देते हैं.

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);
}

आउटपुट में बदलाव

JSON आउटपुट में नया टॉप-लेवल फ़ॉर्मैट

लाइटहाउस v3 से मिलने वाले JSON ऑब्जेक्ट में अब तीन टॉप-लेवल प्रॉपर्टी शामिल हैं:

  • lhr. ऑडिट के नतीजे. "लाइटहाउस नतीजे" के लिए शॉर्ट वीडियो. यह ज़रूरी था कि v2 में टॉप लेवल ऑब्जेक्ट है, लेकिन v3 इस ऑब्जेक्ट के आकार में नुकसान पहुंचाने वाले बदलाव भी पेश करता है. यहां जाएं: नतीजों के ऑब्जेक्ट में किए गए बदलाव.
  • artifacts. ऑडिट के दौरान Chrome से इकट्ठा किया गया डेटा. पहले, यह LHR की प्रॉपर्टी के साथ मिलकर दिखती थी.
  • report. स्ट्रिंग के तौर पर फ़ॉर्मैट की गई रिपोर्ट का एचटीएमएल/JSON/CSV.

नतीजे के ऑब्जेक्ट में किए गए बदलाव

जैसा कि JSON आउटपुट में नया टॉप-लेवल फ़ॉर्मैट में बताया गया है, अब ऑडिट के नतीजे lhr प्रॉपर्टी के ज़रिए उपलब्ध है. वर्शन 2 में, इस ऑब्जेक्ट का कॉन्टेंट ज़रूरी था टॉप लेवल JSON आउटपुट. हालांकि, वर्शन 3 में इस ऑब्जेक्ट का आकार बदल गया है. नीचे दी गई टेबल सभी बदलावों की सूची बनाता है.

  • अगर किसी पंक्ति में v2 और v3, दोनों कॉलम में कोई वैल्यू मौजूद है, तो इसका मतलब है आपको अपने कोड में v2 प्रॉपर्टी के किसी भी रेफ़रंस को v3-बराबर के साथ बदल देना चाहिए.
  • जब किसी पंक्ति में v3 कॉलम में कोई वैल्यू नहीं होती है, तो नोट कॉलम में आपके विकल्पों के बारे में बताया जाता है.
  • ध्यान दें कि ID जैसे आइटम, प्लेसहोल्डर टेक्स्ट दिखाते हैं.
v2 प्रॉपर्टी वर्शन 3-बराबर नोट
initialUrl requestedUrl
url finalUrl
generatedTime fetchedTime
reportCategories categories अरे से कुंजी वाले ऑब्जेक्ट में बदला गया.
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 संभावित वैल्यू को इतना बढ़ा दिया गया है numeric|binary|manual|informative|not-applicable|error.
audits.ID.score audits.ID.score अगर scoreDisplayMode न्यूमेरिक या बाइनरी है. अन्य डिसप्ले मोड के लिए स्कोर हमेशा null होते हैं, क्योंकि कोई पास/फ़ेल की जानकारी शामिल नहीं है.
audits.ID.displayValue audits.ID.displayValue यह स्ट्रिंग इंटरपोलेशन के लिए Printf-स्टाइल आर्ग्युमेंट की कैटगरी हो सकती है.
audits.ID.debugString audits.ID.explanation audits.ID.errorMessage audits.ID.warnings debugString की वैल्यू को ऊपर दी गई तीन प्रॉपर्टी में से किसी एक में बदल दिया गया है जो उनके इंटेंट पर निर्भर करता है.
audits.ID.details audits.ID.details जानकारी अब पहले से ज़्यादा बेहतर हो चुकी है. .items में हर एंट्री any[] के बजाय भरोसेमंद कुंजियों वाला एक ऑब्जेक्ट है.
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 हटाया गया. इसके बजाय, details का इस्तेमाल करें.