chrome.readingList

ब्यौरा

रीडिंग लिस्ट में मौजूद आइटम को पढ़ने और उनमें बदलाव करने के लिए, chrome.readingList API का इस्तेमाल करें.

अनुमतियां

readingList

Reading List API का इस्तेमाल करने के लिए, एक्सटेंशन मेनिफ़ेस्ट फ़ाइल में "readingList" अनुमति जोड़ें:

manifest.json:

{
  "name": "My reading list extension",
  ...
  "permissions": [
    "readingList"
  ]
}

उपलब्धता

Chrome 120 और उसके बाद वाले वर्शन संगीत वीडियो 3+

Chrome के साइड पैनल में एक रीडिंग लिस्ट दी जाती है. इससे उपयोगकर्ता, वेब पेजों को सेव कर सकते हैं, ताकि वे बाद में या ऑफ़लाइन होने पर भी उन्हें पढ़ सकें. मौजूदा आइटम वापस पाने और सूची में आइटम जोड़ने या हटाने के लिए, Reading List API का इस्तेमाल करें.

रीडिंग लिस्ट में कई लेख दिख रहे हैं
रीडिंग लिस्ट में कई लेख दिख रहे हैं

सिद्धांत और उनका इस्तेमाल

सामान ऑर्डर करना

रीडिंग लिस्ट में मौजूद आइटम, गारंटी के साथ किसी भी क्रम में नहीं हैं.

आइटम की खासियत

आइटम को यूआरएल के हिसाब से क्रम में लगाया जाता है. इसमें हैश और क्वेरी स्ट्रिंग शामिल है.

उपयोग के उदाहरण

नीचे दिए गए सेक्शन में, Reading List API के इस्तेमाल के कुछ सामान्य उदाहरण दिए गए हैं. एक्सटेंशन के पूरे उदाहरणों के लिए, एक्सटेंशन के नमूने देखें.

आइटम जोड़ें

रीडिंग लिस्ट में किसी आइटम को जोड़ने के लिए, chrome.readingList.addEntry() का इस्तेमाल करें:

chrome.readingList.addEntry({
  title: "New to the web platform in September | web.dev",
  url: "https://developer.chrome.com/",
  hasBeenRead: false
});

आइटम दिखाएं

रीडिंग लिस्ट में मौजूद आइटम दिखाने के लिए, chrome.readingList.query() तरीके का इस्तेमाल करके उन्हें वापस लाएं. तरीका.

const items = await chrome.readingList.query({});

for (const item of items) {
  // Do something do display the item
}

किसी आइटम को 'पढ़ा गया' के तौर पर मार्क करना

टाइटल, यूआरएल, और रीड स्टेटस को अपडेट करने के लिए, chrome.readingList.updateEntry() का इस्तेमाल किया जा सकता है. नीचे दिया गया कोड, किसी आइटम को 'पढ़ा गया' के तौर पर मार्क करता है:

chrome.readingList.updateEntry({
  url: "https://developer.chrome.com/",
  hasBeenRead: true
});

कोई आइटम हटाना

किसी आइटम को हटाने के लिए, chrome.readingList.removeEntry() का इस्तेमाल करें:

chrome.readingList.removeEntry({
  url: "https://developer.chrome.com/"
});

एक्सटेंशन के सैंपल

Reading List API एक्सटेंशन के ज़्यादा डेमो देखने के लिए, Reading List API का सैंपल देखें.

टाइप

AddEntryOptions

प्रॉपर्टी

  • hasBeenRead

    बूलियन

    अगर एंट्री पढ़ी गई है, तो यह true होगा.

  • title

    स्ट्रिंग

    एंट्री का टाइटल.

  • url

    स्ट्रिंग

    एंट्री का यूआरएल.

QueryInfo

प्रॉपर्टी

  • hasBeenRead

    बूलियन ज़रूरी नहीं

    इससे पता चलता है कि पढ़े गए (true) या नहीं पढ़े गए (false) आइटम खोजने हैं या नहीं.

  • title

    स्ट्रिंग ज़रूरी नहीं

    खोजने के लिए कोई टाइटल.

  • url

    स्ट्रिंग ज़रूरी नहीं

    खोजने के लिए यूआरएल.

ReadingListEntry

प्रॉपर्टी

  • creationTime

    संख्या

    एंट्री बनाने का समय. 1 जनवरी, 1970 से मिलीसेकंड में रिकॉर्ड किया गया.

  • hasBeenRead

    बूलियन

    अगर एंट्री पढ़ी गई है, तो यह true होगा.

  • lastUpdateTime

    संख्या

    एंट्री को आखिरी बार अपडेट किए जाने की तारीख. यह वैल्यू, 1 जनवरी, 1970 से मिलीसेकंड में होती है.

  • title

    स्ट्रिंग

    एंट्री का टाइटल.

  • url

    स्ट्रिंग

    एंट्री का यूआरएल.

RemoveOptions

प्रॉपर्टी

  • url

    स्ट्रिंग

    जिस यूआरएल को हटाना है.

UpdateEntryOptions

प्रॉपर्टी

  • hasBeenRead

    बूलियन ज़रूरी नहीं

    रीड स्टेटस अपडेट किया गया. अगर कोई वैल्यू नहीं दी जाती है, तो मौजूदा स्थिति बनी रहती है.

  • title

    स्ट्रिंग ज़रूरी नहीं

    नया टाइटल. वैल्यू न दिए जाने पर, मौजूदा टाइल दिखती है.

  • url

    स्ट्रिंग

    वह यूआरएल जिसे अपडेट किया जाएगा.

तरीके

addEntry()

वादा करना
chrome.readingList.addEntry(
  entry: AddEntryOptions,
  callback?: function,
)

अगर रीडिंग लिस्ट मौजूद नहीं है, तो उसमें एक एंट्री जोड़ता है.

पैरामीटर

  • एंट्री

    रीडिंग लिस्ट में जोड़ने के लिए एंट्री.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर ऐसा दिखता है:

    () => void

रिटर्न

  • Promise<void>

    मेनिफ़ेस्ट V3 और उसके बाद के वर्शन में, प्रॉमिस का इस्तेमाल किया जा सकता है. हालांकि, पुराने सिस्टम के साथ काम करने की सुविधा के लिए कॉलबैक उपलब्ध कराए गए हैं. एक ही फ़ंक्शन कॉल में दोनों का इस्तेमाल नहीं किया जा सकता. कॉन्टेंट बनाने प्रॉमिस उसी टाइप के साथ ठीक होता है जिसे कॉलबैक में पास किया जाता है.

query()

Promise
chrome.readingList.query(
  info: QueryInfo,
  callback?: function,
)

QueryInfo प्रॉपर्टी से मेल खाने वाली सभी एंट्री हासिल करता है. जो प्रॉपर्टी नहीं दी गई हैं उनका मिलान नहीं किया जाएगा.

पैरामीटर

  • जानकारी

    खोजी जाने वाली प्रॉपर्टी.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर इस तरह दिखता है:

    (entries: ReadingListEntry[]) => void

रिटर्न

  • Promise<ReadingListEntry[]>

    मेनिफ़ेस्ट V3 और उसके बाद के वर्शन में, प्रॉमिस का इस्तेमाल किया जा सकता है. हालांकि, पुराने सिस्टम के साथ काम करने की सुविधा के लिए कॉलबैक उपलब्ध कराए गए हैं. एक ही फ़ंक्शन कॉल में दोनों का इस्तेमाल नहीं किया जा सकता. कॉन्टेंट बनाने प्रॉमिस उसी टाइप के साथ ठीक होता है जिसे कॉलबैक में पास किया जाता है.

removeEntry()

Promise
chrome.readingList.removeEntry(
  info: RemoveOptions,
  callback?: function,
)

अगर रीडिंग लिस्ट में कोई एंट्री मौजूद है, तो उसे हटा देता है.

पैरामीटर

  • जानकारी

    रीडिंग लिस्ट से हटाई जाने वाली एंट्री.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर इस तरह दिखता है:

    () => void

रिटर्न

  • Promise<void>

    मेनिफ़ेस्ट V3 और उसके बाद के वर्शन में, प्रॉमिस का इस्तेमाल किया जा सकता है. हालांकि, पुराने सिस्टम के साथ काम करने की सुविधा के लिए कॉलबैक उपलब्ध कराए गए हैं. एक ही फ़ंक्शन कॉल में दोनों का इस्तेमाल नहीं किया जा सकता. कॉन्टेंट बनाने प्रॉमिस उसी टाइप के साथ ठीक होता है जिसे कॉलबैक में पास किया जाता है.

updateEntry()

Promise
chrome.readingList.updateEntry(
  info: UpdateEntryOptions,
  callback?: function,
)

अगर रीडिंग लिस्ट में कोई एंट्री मौजूद है, तो उसे अपडेट करता है.

पैरामीटर

  • जानकारी

    अपडेट की जाने वाली एंट्री.

  • कॉलबैक

    फ़ंक्शन वैकल्पिक

    callback पैरामीटर ऐसा दिखता है:

    () => void

रिटर्न

  • Promise<void>

    मेनिफ़ेस्ट V3 और उसके बाद के वर्शन में, प्रॉमिस का इस्तेमाल किया जा सकता है. हालांकि, पुराने सिस्टम के साथ काम करने की सुविधा के लिए कॉलबैक उपलब्ध कराए गए हैं. एक ही फ़ंक्शन कॉल में, दोनों का इस्तेमाल नहीं किया जा सकता. प्रोमिस, कॉलबैक में पास किए गए टाइप के साथ ही रिज़ॉल्व होता है.

इवेंट

onEntryAdded

chrome.readingList.onEntryAdded.addListener(
  callback: function,
)

रीडिंग लिस्ट में ReadingListEntry जोड़े जाने पर ट्रिगर होता है.

पैरामीटर

  • कॉलबैक

    फ़ंक्शन

    callback पैरामीटर ऐसा दिखता है:

    (entry: ReadingListEntry) => void

onEntryRemoved

chrome.readingList.onEntryRemoved.addListener(
  callback: function,
)

यह तब ट्रिगर होता है, जब ReadingListEntry को रीडिंग लिस्ट से हटाया जाता है.

पैरामीटर

  • कॉलबैक

    फ़ंक्शन

    callback पैरामीटर ऐसा दिखता है:

    (entry: ReadingListEntry) => void

onEntryUpdated

chrome.readingList.onEntryUpdated.addListener(
  callback: function,
)

यह तब ट्रिगर होता है, जब रीडिंग लिस्ट में ReadingListEntry को अपडेट किया जाता है.

पैरामीटर

  • कॉलबैक

    फ़ंक्शन

    callback पैरामीटर ऐसा दिखता है:

    (entry: ReadingListEntry) => void