ওয়ার্কবক্স-ওয়েবপ্যাক-প্লাগইন

ওয়ার্কবক্স দুটি ওয়েবপ্যাক প্লাগইন সরবরাহ করে: একটি যা আপনার জন্য একটি সম্পূর্ণ পরিষেবা কর্মী তৈরি করে এবং একটি যা একটি পরিষেবা কর্মী ফাইলে প্রবেশ করানো প্রিক্যাশে সম্পদের একটি তালিকা তৈরি করে৷

GenerateSW এবং InjectManifest নামে workbox-webpack-plugin মডিউলে প্লাগইন দুটি শ্রেণী হিসেবে প্রয়োগ করা হয়। নিম্নলিখিত প্রশ্নের উত্তর আপনাকে সঠিক প্লাগইন এবং কনফিগারেশন ব্যবহার করতে সাহায্য করতে পারে।

কোন প্লাগইন ব্যবহার করতে হবে

GenerateSW

GenerateSW প্লাগইন আপনার জন্য একটি পরিষেবা কর্মী ফাইল তৈরি করবে এবং এটিকে ওয়েবপ্যাক সম্পদ পাইপলাইনে যুক্ত করবে।

GenerateSW কখন ব্যবহার করবেন

  • আপনি ফাইল precache করতে চান.
  • আপনার সহজ রানটাইম ক্যাশিং প্রয়োজন আছে।

কখন GenerateSW ব্যবহার করবেন না

  • আপনি অন্যান্য পরিষেবা কর্মী বৈশিষ্ট্যগুলি (যেমন ওয়েব পুশ ) ব্যবহার করতে চান।
  • আপনি অতিরিক্ত স্ক্রিপ্ট আমদানি করতে চান, বা কাস্টম ক্যাশিং কৌশলগুলির জন্য অতিরিক্ত যুক্তি যোগ করতে চান।

InjectManifest

InjectManifest প্লাগইন precache করার জন্য URL-এর একটি তালিকা তৈরি করবে এবং একটি বিদ্যমান পরিষেবা কর্মী ফাইলে সেই precache ম্যানিফেস্ট যোগ করবে। এটি অন্যথায় ফাইলটিকে যেমন-ই রেখে দেবে।

কখন InjectManifest ব্যবহার করবেন

  • আপনি আপনার সেবা কর্মীর উপর আরো নিয়ন্ত্রণ চান.
  • আপনি ফাইল precache করতে চান.
  • আপনাকে রাউটিং এবং কৌশলগুলি কাস্টমাইজ করতে হবে।
  • আপনি আপনার পরিষেবা কর্মীকে অন্যান্য প্ল্যাটফর্ম বৈশিষ্ট্যগুলির সাথে ব্যবহার করতে চান (যেমন ওয়েব পুশ )।

যখন InjectManifest ব্যবহার করবেন না

  • আপনি আপনার সাইটে একটি পরিষেবা কর্মী যোগ করার সবচেয়ে সহজ পথ চান.

এসডব্লিউ প্লাগইন তৈরি করুন

আপনি আপনার ওয়েবপ্যাক কনফিগারেশনে GenerateSW প্লাগইন যুক্ত করতে পারেন:

// Inside of webpack.config.js:
const {GenerateSW} = require('workbox-webpack-plugin');

module.exports = {
  // Other webpack config...
  plugins: [
    // Other plugins...
    new GenerateSW({
      // These are some common options, and not all are required.
      // Consult the docs for more info.
      exclude: [/.../, '...'],
      maximumFileSizeToCacheInBytes: ...,
      navigateFallback: '...',
      runtimeCaching: [{
        // Routing via a matchCallback function:
        urlPattern: ({request, url}) => ...,
        handler: '...',
        options: {
          cacheName: '...',
          expiration: {
            maxEntries: ...,
          },
        },
      }, {
        // Routing via a RegExp:
        urlPattern: new RegExp('...'),
        handler: '...',
        options: {
          cacheName: '...',
          plugins: [..., ...],
        },
      }],
      skipWaiting: ...,
    }),
  ],
};

এটি আপনার কনফিগারেশন দ্বারা বাছাই করা সমস্ত ওয়েবপ্যাক সম্পদের জন্য প্রিক্যাচিং সেটআপ সহ একটি পরিষেবা কর্মী তৈরি করবে এবং রানটাইম ক্যাশিং নিয়ম সরবরাহ করবে।

কনফিগারেশন বিকল্পগুলির একটি সম্পূর্ণ সেট রেফারেন্স ডকুমেন্টেশনে পাওয়া যাবে।

InjectManifest প্লাগইন

আপনি আপনার ওয়েবপ্যাক কনফিগারে InjectManifest প্লাগইন যোগ করতে পারেন এভাবে:

// Inside of webpack.config.js:
const {InjectManifest} = require('workbox-webpack-plugin');

module.exports = {
  // Other webpack config...
  plugins: [
    // Other plugins...
    new InjectManifest({
      // These are some common options, and not all are required.
      // Consult the docs for more info.
      exclude: [/.../, '...'],
      maximumFileSizeToCacheInBytes: ...,
      swSrc: '...',
    }),
  ],
};

এটি আপনার কনফিগারেশন দ্বারা বাছাই করা ওয়েবপ্যাক সম্পদের উপর ভিত্তি করে একটি প্রিক্যাশ ম্যানিফেস্ট তৈরি করবে এবং এটি আপনার বান্ডিল এবং সংকলিত পরিষেবা কর্মী ফাইলে ইনজেক্ট করবে।

কনফিগারেশন বিকল্পগুলির একটি সম্পূর্ণ সেট রেফারেন্স ডকুমেন্টেশনে পাওয়া যাবে।

অতিরিক্ত তথ্য

একটি বৃহত্তর ওয়েবপ্যাক বিল্ডের প্রেক্ষাপটে প্লাগইনগুলি ব্যবহার করার নির্দেশিকা ওয়েবপ্যাক ডকুমেন্টেশনের " প্রগতিশীল ওয়েব অ্যাপ্লিকেশন " বিভাগে পাওয়া যাবে।

প্রকারভেদ

GenerateSW

এই ক্লাসটি ওয়েবপ্যাক সংকলন প্রক্রিয়ার অংশ হিসাবে একটি নতুন, ব্যবহারের জন্য প্রস্তুত পরিষেবা কর্মী ফাইল তৈরি করতে সমর্থন করে৷

একটি ওয়েবপ্যাক কনফিগারেশনের plugins অ্যারেতে GenerateSW এর একটি উদাহরণ ব্যবহার করুন।

// The following lists some common options; see the rest of the documentation
// for the full set of options and defaults.
new GenerateSW({
  exclude: [/.../, '...'],
  maximumFileSizeToCacheInBytes: ...,
  navigateFallback: '...',
  runtimeCaching: [{
    // Routing via a matchCallback function:
    urlPattern: ({request, url}) => ...,
    handler: '...',
    options: {
      cacheName: '...',
      expiration: {
        maxEntries: ...,
      },
    },
  }, {
    // Routing via a RegExp:
    urlPattern: new RegExp('...'),
    handler: '...',
    options: {
      cacheName: '...',
      plugins: [..., ...],
    },
  }],
  skipWaiting: ...,
});

বৈশিষ্ট্য

GenerateSWConfig

বৈশিষ্ট্য

  • অতিরিক্ত ম্যানিফেস্ট এন্ট্রি

    (স্ট্রিং | ম্যানিফেস্ট এন্ট্রি)[] ঐচ্ছিক

    বিল্ড কনফিগারেশনের অংশ হিসাবে উত্পন্ন যেকোন এন্ট্রি ছাড়াও প্রিক্যাচ করা এন্ট্রিগুলির একটি তালিকা।

  • babelPresetEnvTargets

    স্ট্রিং[] ঐচ্ছিক

    ডিফল্ট মান হল: ["chrome >= 56"]

    পরিষেবা কর্মী বান্ডিল ট্রান্সপিল করার সময় babel-preset-env এ পাস করার লক্ষ্যগুলি

  • cacheId

    স্ট্রিং ঐচ্ছিক

    ক্যাশে নামের জন্য একটি ঐচ্ছিক আইডি প্রিপেন্ড করতে হবে। এটি প্রাথমিকভাবে স্থানীয় উন্নয়নের জন্য উপযোগী যেখানে একই http://localhost:port অরিজিন থেকে একাধিক সাইট পরিবেশিত হতে পারে।

  • খণ্ড

    স্ট্রিং[] ঐচ্ছিক

    এক বা একাধিক খণ্ডের নাম যার সংশ্লিষ্ট আউটপুট ফাইলগুলি প্রিক্যাচে ম্যানিফেস্টে অন্তর্ভুক্ত করা উচিত।

  • ক্লিনআপ আউটডেটেড ক্যাশে

    বুলিয়ান ঐচ্ছিক

    ডিফল্ট মান হল: মিথ্যা

    ওয়ার্কবক্স পুরানো, বেমানান সংস্করণ দ্বারা তৈরি যে কোনো প্রিক্যাচ সনাক্ত এবং মুছে ফেলার চেষ্টা করা উচিত কিনা।

  • ক্লায়েন্ট দাবি

    বুলিয়ান ঐচ্ছিক

    ডিফল্ট মান হল: মিথ্যা

    পরিষেবা কর্মী যে কোনও বিদ্যমান ক্লায়েন্ট সক্রিয় হওয়ার সাথে সাথে নিয়ন্ত্রণ করা শুরু করা উচিত কিনা।

  • ডিরেক্টরি ইনডেক্স

    স্ট্রিং ঐচ্ছিক

    যদি একটি URL-এর জন্য একটি নেভিগেশন অনুরোধ যা শেষ হয় / একটি precached URL এর সাথে মেলে না, তাহলে এই মানটি URL-এর সাথে যুক্ত করা হবে এবং এটি একটি precache মিলের জন্য চেক করা হবে। এটি আপনার ওয়েব সার্ভার তার ডিরেক্টরি সূচী জন্য ব্যবহার করছে কি সেট করা উচিত.

  • ডিজেবল ডেভলগ

    বুলিয়ান ঐচ্ছিক

    ডিফল্ট মান হল: মিথ্যা

  • ক্যাচেবাস্ট ইউআরএল মিলছে না

    RegExp ঐচ্ছিক

    এর সাথে মেলে এমন সম্পদগুলিকে তাদের URL এর মাধ্যমে স্বতন্ত্রভাবে সংস্করণ করা হয়েছে বলে ধরে নেওয়া হবে এবং প্রিক্যাশে পপুলেট করার সময় করা সাধারণ HTTP ক্যাশে-বাস্টিং থেকে অব্যাহতি দেওয়া হবে। প্রয়োজন না হলেও, এটি সুপারিশ করা হয় যে যদি আপনার বিদ্যমান বিল্ড প্রক্রিয়া ইতিমধ্যেই প্রতিটি ফাইলনামে একটি [hash] মান সন্নিবেশ করে, আপনি একটি RegExp প্রদান করেন যা এটি সনাক্ত করবে, কারণ এটি প্রিক্যাচিং করার সময় ব্যান্ডউইথ খরচ কমিয়ে দেবে।

  • বাদ

    (স্ট্রিং | RegExp | ফাংশন)[] ঐচ্ছিক৷

    এক বা একাধিক স্পেসিফায়ার precache ম্যানিফেস্ট থেকে সম্পদ বাদ দিতে ব্যবহৃত হয়। এটি webpack স্ট্যান্ডার্ড exclude বিকল্পের মতো একই নিয়ম অনুসরণ করে ব্যাখ্যা করা হয়। প্রদান না করা হলে, ডিফল্ট মান হল [/\.map$/, /^manifest.*\.js$]

  • খণ্ডগুলি বাদ দিন

    স্ট্রিং[] ঐচ্ছিক

    এক বা একাধিক খণ্ডের নাম যার সংশ্লিষ্ট আউটপুট ফাইলগুলিকে precache ম্যানিফেস্ট থেকে বাদ দেওয়া উচিত৷

  • ignoreURL প্যারামিটার ম্যাচিং

    RegExp[] ঐচ্ছিক

    এই অ্যারের RegExp-এর একটির সাথে মেলে এমন যেকোন সার্চ প্যারামিটার নাম একটি precache মিল খোঁজার আগে সরিয়ে দেওয়া হবে। এটি উপযোগী যদি আপনার ব্যবহারকারীরা এমন URLগুলির অনুরোধ করতে পারে যাতে রয়েছে, উদাহরণস্বরূপ, ট্রাফিকের উত্স ট্র্যাক করতে ব্যবহৃত URL প্যারামিটার৷ প্রদান করা না হলে, ডিফল্ট মান হল [/^utm_/, /^fbclid$/]

  • আমদানি স্ক্রিপ্ট

    স্ট্রিং[] ঐচ্ছিক

    জাভাস্ক্রিপ্ট ফাইলগুলির একটি তালিকা যা জেনারেট করা পরিষেবা কর্মী ফাইলের ভিতরে importScripts() এ পাস করা উচিত। যখন আপনি ওয়ার্কবক্সকে আপনার শীর্ষ-স্তরের পরিষেবা কর্মী ফাইল তৈরি করতে দিতে চান, তবে কিছু অতিরিক্ত কোড অন্তর্ভুক্ত করতে চান, যেমন একটি পুশ ইভেন্ট লিসেনার।

  • importScriptsViaChunks

    স্ট্রিং[] ঐচ্ছিক

    ওয়েবপ্যাক খণ্ডের এক বা একাধিক নাম। সেই অংশগুলির বিষয়বস্তু importScripts() এ কলের মাধ্যমে জেনারেট করা পরিষেবা কর্মীতে অন্তর্ভুক্ত করা হবে।

  • অন্তর্ভুক্ত

    (স্ট্রিং | RegExp | ফাংশন)[] ঐচ্ছিক৷

    precache ম্যানিফেস্টে সম্পদ অন্তর্ভুক্ত করতে ব্যবহৃত এক বা একাধিক স্পেসিফায়ার। এটি webpack স্ট্যান্ডার্ড include বিকল্পের মতো একই নিয়ম অনুসরণ করে ব্যাখ্যা করা হয়।

  • ইনলাইন ওয়ার্কবক্স রানটাইম

    বুলিয়ান ঐচ্ছিক

    ডিফল্ট মান হল: মিথ্যা

    ওয়ার্কবক্স লাইব্রেরির জন্য রানটাইম কোডটি শীর্ষ-স্তরের পরিষেবা কর্মীর মধ্যে অন্তর্ভুক্ত করা উচিত, বা একটি পৃথক ফাইলে বিভক্ত করা উচিত যা পরিষেবা কর্মীর পাশাপাশি স্থাপন করা প্রয়োজন। রানটাইম আলাদা রাখার অর্থ হল যে প্রতিবার আপনার শীর্ষ-স্তরের পরিষেবা কর্মী পরিবর্তন করার সময় ব্যবহারকারীদের ওয়ার্কবক্স কোড পুনরায় ডাউনলোড করতে হবে না।

  • ম্যানিফেস্ট এন্ট্রি

    ম্যানিফেস্ট এন্ট্রি[] ঐচ্ছিক

  • ম্যানিফেস্ট ট্রান্সফর্মস

    ManifestTransform[] ঐচ্ছিক

    এক বা একাধিক ফাংশন যা জেনারেট করা ম্যানিফেস্টের বিপরীতে ক্রমানুসারে প্রয়োগ করা হবে। যদি modifyURLPrefix বা dontCacheBustURLsMatching ও নির্দিষ্ট করা থাকে, তাহলে তাদের সংশ্লিষ্ট রূপান্তরগুলি প্রথমে প্রয়োগ করা হবে।

  • MaxFileSizeToCacheInBytes

    সংখ্যা ঐচ্ছিক

    ডিফল্ট মান হল: 2097152

    এই মানটি প্রিক্যাচ করা ফাইলগুলির সর্বাধিক আকার নির্ধারণ করতে ব্যবহার করা যেতে পারে। এটি আপনাকে অসাবধানতাবশত আপনার প্যাটার্নগুলির একটির সাথে মিলে যেতে পারে এমন অনেক বড় ফাইলগুলিকে প্রিক্যাচ করা থেকে বাধা দেয়৷

  • মোড

    স্ট্রিং ঐচ্ছিক

    যদি 'উৎপাদন'-এ সেট করা হয়, তাহলে একটি অপ্টিমাইজড পরিষেবা কর্মী বান্ডিল তৈরি করা হবে যা ডিবাগিং তথ্য বাদ দেয়। এখানে স্পষ্টভাবে কনফিগার করা না থাকলে, বর্তমান webpack সংকলনে কনফিগার করা mode মান ব্যবহার করা হবে।

  • modifyURLপ্রিফিক্স

    বস্তু ঐচ্ছিক

    একটি বস্তু ম্যাপিং স্ট্রিং প্রতিস্থাপন স্ট্রিং মান উপসর্গ. এটি ব্যবহার করা যেতে পারে, উদাহরণস্বরূপ, একটি ম্যানিফেস্ট এন্ট্রি থেকে একটি পাথ প্রিফিক্স অপসারণ বা যোগ করতে যদি আপনার ওয়েব হোস্টিং সেটআপ আপনার স্থানীয় ফাইল সিস্টেম সেটআপের সাথে মেলে না। আরও নমনীয়তার বিকল্প হিসাবে, আপনি manifestTransforms বিকল্পটি ব্যবহার করতে পারেন এবং এমন একটি ফাংশন প্রদান করতে পারেন যা ম্যানিফেস্টের এন্ট্রিগুলিকে আপনি যে যুক্তি প্রদান করেন তা ব্যবহার করে পরিবর্তন করে৷

    উদাহরণ ব্যবহার:

    // Replace a '/dist/' prefix with '/', and also prepend
    // '/static' to every URL.
    modifyURLPrefix: {
      '/dist/': '/',
      '': '/static',
    }
    
  • নেভিগেট ফলব্যাক

    স্ট্রিং ঐচ্ছিক

    ডিফল্ট মান হল: null

    নির্দিষ্ট করা থাকলে, প্রিক্যাচ করা হয়নি এমন URLগুলির জন্য সমস্ত নেভিগেশন অনুরোধ প্রদত্ত URL-এ HTML দিয়ে পূরণ করা হবে। আপনাকে অবশ্যই একটি HTML নথির URL পাস করতে হবে যা আপনার precache ম্যানিফেস্টে তালিকাভুক্ত। এটি একটি একক পৃষ্ঠা অ্যাপ দৃশ্যে ব্যবহার করার জন্য বোঝানো হয়েছে, যেখানে আপনি সমস্ত নেভিগেশন সাধারণ অ্যাপ শেল HTML ব্যবহার করতে চান।

  • নেভিগেটFallbackAllowlist

    RegExp[] ঐচ্ছিক

    রেগুলার এক্সপ্রেশনের একটি ঐচ্ছিক বিন্যাস যা কনফিগার করা navigateFallback আচরণ কোন ইউআরএলে প্রযোজ্য তা সীমাবদ্ধ করে। এটি উপযোগী যদি শুধুমাত্র আপনার সাইটের URL-এর একটি উপসেটকে একটি একক পৃষ্ঠা অ্যাপের অংশ হিসাবে বিবেচনা করা হয়। যদি navigateFallbackDenylist এবং navigateFallbackAllowlist উভয়ই কনফিগার করা থাকে, তবে অস্বীকারকারী নজির নেয়।

    দ্রষ্টব্য : একটি নেভিগেশন চলাকালীন প্রতিটি গন্তব্য URL এর বিপরীতে এই RegExps মূল্যায়ন করা হতে পারে। জটিল RegExps ব্যবহার করা এড়িয়ে চলুন, অন্যথায় আপনার ব্যবহারকারীরা আপনার সাইটে নেভিগেট করার সময় বিলম্ব দেখতে পাবেন।

  • নেভিগেট ফলব্যাকডেনিলিস্ট

    RegExp[] ঐচ্ছিক

    রেগুলার এক্সপ্রেশনের একটি ঐচ্ছিক বিন্যাস যা কনফিগার করা navigateFallback আচরণ কোন ইউআরএলে প্রযোজ্য তা সীমাবদ্ধ করে। এটি উপযোগী যদি শুধুমাত্র আপনার সাইটের URL-এর একটি উপসেটকে একটি একক পৃষ্ঠা অ্যাপের অংশ হিসাবে বিবেচনা করা হয়। যদি navigateFallbackDenylist এবং navigateFallbackAllowlist উভয়ই কনফিগার করা থাকে, তবে অস্বীকারকারী অগ্রাধিকার নেয়।

    দ্রষ্টব্য : একটি নেভিগেশন চলাকালীন প্রতিটি গন্তব্য URL এর বিপরীতে এই RegExps মূল্যায়ন করা হতে পারে। জটিল RegExps ব্যবহার করা এড়িয়ে চলুন, অন্যথায় আপনার ব্যবহারকারীরা আপনার সাইটে নেভিগেট করার সময় বিলম্ব দেখতে পাবেন।

  • নেভিগেশনপ্রিলোড

    বুলিয়ান ঐচ্ছিক

    ডিফল্ট মান হল: মিথ্যা

    জেনারেটেড সার্ভিস ওয়ার্কারে নেভিগেশন প্রিলোড সক্ষম করবেন কি না। সত্য হিসাবে সেট করা হলে, আপনাকে অবশ্যই একটি উপযুক্ত প্রতিক্রিয়া কৌশল সেট আপ করতে runtimeCaching ব্যবহার করতে হবে যা নেভিগেশন অনুরোধের সাথে মেলে এবং প্রিলোড করা প্রতিক্রিয়া ব্যবহার করবে।

  • অফলাইন GoogleAnalytics

    বুলিয়ান | GoogleAnalyticsInitializeOptions ঐচ্ছিক

    ডিফল্ট মান হল: মিথ্যা

    অফলাইন Google Analytics-এর জন্য সমর্থন অন্তর্ভুক্ত করতে হবে কিনা তা নিয়ন্ত্রণ করে। true হলে, workbox-google-analytics initialize() কলটি আপনার জেনারেট করা সার্ভিস ওয়ার্কারে যোগ করা হবে। একটি Object সেট করা হলে, সেই অবজেক্টটি initialize() কলে পাস করা হবে, যা আপনাকে আচরণটি কাস্টমাইজ করতে দেয়।

  • রানটাইম ক্যাচিং

    RuntimeCaching[] ঐচ্ছিক

    আপনার পরিষেবা কর্মী তৈরি করতে ওয়ার্কবক্সের বিল্ড টুল ব্যবহার করার সময়, আপনি এক বা একাধিক রানটাইম ক্যাশিং কনফিগারেশন নির্দিষ্ট করতে পারেন। এইগুলি তারপর আপনার সংজ্ঞায়িত ম্যাচ এবং হ্যান্ডলার কনফিগারেশন ব্যবহার করে workbox-routing.registerRoute কলগুলিতে অনুবাদ করা হয়।

    সমস্ত বিকল্পের জন্য, workbox-build.RuntimeCaching ডকুমেন্টেশন দেখুন। নীচের উদাহরণটি দুটি রানটাইম রুট সংজ্ঞায়িত সহ একটি সাধারণ কনফিগারেশন দেখায়:

  • অপেক্ষা করা বাদ দিন

    বুলিয়ান ঐচ্ছিক

    ডিফল্ট মান হল: মিথ্যা

    উত্পন্ন পরিষেবা কর্মীকে skipWaiting() এ একটি নিঃশর্ত কল যোগ করতে হবে কিনা। যদি false , তাহলে এর পরিবর্তে একজন message শ্রোতা যোগ করা হবে, ক্লায়েন্ট পৃষ্ঠাগুলিকে postMessage({type: 'SKIP_WAITING'}) কল করে skipWaiting() ট্রিগার করার অনুমতি দেয় একজন অপেক্ষমাণ পরিষেবা কর্মীকে।

  • উত্সম্যাপ

    বুলিয়ান ঐচ্ছিক

    ডিফল্ট মান হল: সত্য

    উত্পন্ন পরিষেবা কর্মী ফাইলগুলির জন্য একটি উত্সম্যাপ তৈরি করা হবে কিনা।

  • swDest

    স্ট্রিং ঐচ্ছিক

    ডিফল্ট মান হল: "service-worker.js"

    এই প্লাগইন দ্বারা তৈরি পরিষেবা কর্মী ফাইলের সম্পদের নাম।

InjectManifest

এই ক্লাসটি swSrc এর মাধ্যমে প্রদত্ত একটি পরিষেবা কর্মী ফাইল কম্পাইল করা এবং সেই পরিষেবা কর্মীকে ওয়েবপ্যাক অ্যাসেট পাইপলাইনের উপর ভিত্তি করে প্রিক্যাচিংয়ের জন্য URL-এর একটি তালিকা এবং পুনর্বিবেচনা তথ্য ইনজেক্ট করা সমর্থন করে৷

একটি ওয়েবপ্যাক কনফিগারেশনের plugins অ্যারেতে InjectManifest এর একটি উদাহরণ ব্যবহার করুন।

ম্যানিফেস্ট ইনজেকশন করার পাশাপাশি, এই প্লাগইনটি মূল ওয়েবপ্যাক কনফিগারেশনের বিকল্পগুলি ব্যবহার করে swSrc ফাইলের একটি সংকলন সম্পাদন করবে।

// The following lists some common options; see the rest of the documentation
// for the full set of options and defaults.
new InjectManifest({
  exclude: [/.../, '...'],
  maximumFileSizeToCacheInBytes: ...,
  swSrc: '...',
});

বৈশিষ্ট্য

  • নির্মাণকারী

    অকার্যকর

    InjectManifest এর একটি উদাহরণ তৈরি করে।

    constructor ফাংশনটি এর মত দেখাচ্ছে:

    (config: WebpackInjectManifestOptions) => {...}

    • কনফিগারেশন

      WebpackInjectManifestOptions

  • কনফিগারেশন

    WebpackInjectManifestOptions

বৈশিষ্ট্য

default

টাইপ

বস্তু

বৈশিষ্ট্য

  • এসডব্লিউ তৈরি করুন

    প্রশ্ন

  • ইনজেক্ট ম্যানিফেস্ট

    প্রশ্ন

,

ওয়ার্কবক্স দুটি ওয়েবপ্যাক প্লাগইন সরবরাহ করে: একটি যা আপনার জন্য একটি সম্পূর্ণ পরিষেবা কর্মী তৈরি করে এবং একটি যা একটি পরিষেবা কর্মী ফাইলে প্রবেশ করানো প্রিক্যাশে সম্পদের একটি তালিকা তৈরি করে৷

GenerateSW এবং InjectManifest নামে workbox-webpack-plugin মডিউলে প্লাগইন দুটি শ্রেণী হিসেবে প্রয়োগ করা হয়। নিম্নলিখিত প্রশ্নের উত্তর আপনাকে সঠিক প্লাগইন এবং কনফিগারেশন ব্যবহার করতে সাহায্য করতে পারে।

কোন প্লাগইন ব্যবহার করতে হবে

GenerateSW

GenerateSW প্লাগইন আপনার জন্য একটি পরিষেবা কর্মী ফাইল তৈরি করবে এবং এটিকে ওয়েবপ্যাক সম্পদ পাইপলাইনে যুক্ত করবে।

GenerateSW কখন ব্যবহার করবেন

  • আপনি ফাইল precache করতে চান.
  • আপনার সহজ রানটাইম ক্যাশিং প্রয়োজন আছে।

কখন GenerateSW ব্যবহার করবেন না

  • আপনি অন্যান্য পরিষেবা কর্মী বৈশিষ্ট্যগুলি (যেমন ওয়েব পুশ ) ব্যবহার করতে চান।
  • আপনি অতিরিক্ত স্ক্রিপ্ট আমদানি করতে চান, বা কাস্টম ক্যাশিং কৌশলগুলির জন্য অতিরিক্ত যুক্তি যোগ করতে চান।

InjectManifest

InjectManifest প্লাগইন precache করার জন্য URL-এর একটি তালিকা তৈরি করবে এবং একটি বিদ্যমান পরিষেবা কর্মী ফাইলে সেই precache ম্যানিফেস্ট যোগ করবে। এটি অন্যথায় ফাইলটিকে যেমন-ই রেখে দেবে।

কখন InjectManifest ব্যবহার করবেন

  • আপনি আপনার সেবা কর্মীর উপর আরো নিয়ন্ত্রণ চান.
  • আপনি ফাইল precache করতে চান.
  • আপনাকে রাউটিং এবং কৌশলগুলি কাস্টমাইজ করতে হবে।
  • আপনি আপনার পরিষেবা কর্মীকে অন্যান্য প্ল্যাটফর্ম বৈশিষ্ট্যগুলির সাথে ব্যবহার করতে চান (যেমন ওয়েব পুশ )।

যখন InjectManifest ব্যবহার করবেন না

  • আপনি আপনার সাইটে একটি পরিষেবা কর্মী যোগ করার সবচেয়ে সহজ পথ চান.

এসডব্লিউ প্লাগইন তৈরি করুন

আপনি আপনার ওয়েবপ্যাক কনফিগারেশনে GenerateSW প্লাগইন যুক্ত করতে পারেন:

// Inside of webpack.config.js:
const {GenerateSW} = require('workbox-webpack-plugin');

module.exports = {
  // Other webpack config...
  plugins: [
    // Other plugins...
    new GenerateSW({
      // These are some common options, and not all are required.
      // Consult the docs for more info.
      exclude: [/.../, '...'],
      maximumFileSizeToCacheInBytes: ...,
      navigateFallback: '...',
      runtimeCaching: [{
        // Routing via a matchCallback function:
        urlPattern: ({request, url}) => ...,
        handler: '...',
        options: {
          cacheName: '...',
          expiration: {
            maxEntries: ...,
          },
        },
      }, {
        // Routing via a RegExp:
        urlPattern: new RegExp('...'),
        handler: '...',
        options: {
          cacheName: '...',
          plugins: [..., ...],
        },
      }],
      skipWaiting: ...,
    }),
  ],
};

এটি আপনার কনফিগারেশন দ্বারা বাছাই করা সমস্ত ওয়েবপ্যাক সম্পদের জন্য প্রিক্যাচিং সেটআপ সহ একটি পরিষেবা কর্মী তৈরি করবে এবং রানটাইম ক্যাশিং নিয়ম সরবরাহ করবে।

কনফিগারেশন বিকল্পগুলির একটি সম্পূর্ণ সেট রেফারেন্স ডকুমেন্টেশনে পাওয়া যাবে।

InjectManifest প্লাগইন

আপনি আপনার ওয়েবপ্যাক কনফিগারে InjectManifest প্লাগইন যোগ করতে পারেন এভাবে:

// Inside of webpack.config.js:
const {InjectManifest} = require('workbox-webpack-plugin');

module.exports = {
  // Other webpack config...
  plugins: [
    // Other plugins...
    new InjectManifest({
      // These are some common options, and not all are required.
      // Consult the docs for more info.
      exclude: [/.../, '...'],
      maximumFileSizeToCacheInBytes: ...,
      swSrc: '...',
    }),
  ],
};

এটি আপনার কনফিগারেশন দ্বারা বাছাই করা ওয়েবপ্যাক সম্পদের উপর ভিত্তি করে একটি প্রিক্যাশ ম্যানিফেস্ট তৈরি করবে এবং এটি আপনার বান্ডিল এবং সংকলিত পরিষেবা কর্মী ফাইলে ইনজেক্ট করবে।

কনফিগারেশন বিকল্পগুলির একটি সম্পূর্ণ সেট রেফারেন্স ডকুমেন্টেশনে পাওয়া যাবে।

অতিরিক্ত তথ্য

একটি বৃহত্তর ওয়েবপ্যাক বিল্ডের প্রেক্ষাপটে প্লাগইনগুলি ব্যবহার করার নির্দেশিকা ওয়েবপ্যাক ডকুমেন্টেশনের " প্রগতিশীল ওয়েব অ্যাপ্লিকেশন " বিভাগে পাওয়া যাবে।

প্রকারভেদ

GenerateSW

এই ক্লাসটি ওয়েবপ্যাক সংকলন প্রক্রিয়ার অংশ হিসাবে একটি নতুন, ব্যবহারের জন্য প্রস্তুত পরিষেবা কর্মী ফাইল তৈরি করতে সমর্থন করে৷

একটি ওয়েবপ্যাক কনফিগারেশনের plugins অ্যারেতে GenerateSW এর একটি উদাহরণ ব্যবহার করুন।

// The following lists some common options; see the rest of the documentation
// for the full set of options and defaults.
new GenerateSW({
  exclude: [/.../, '...'],
  maximumFileSizeToCacheInBytes: ...,
  navigateFallback: '...',
  runtimeCaching: [{
    // Routing via a matchCallback function:
    urlPattern: ({request, url}) => ...,
    handler: '...',
    options: {
      cacheName: '...',
      expiration: {
        maxEntries: ...,
      },
    },
  }, {
    // Routing via a RegExp:
    urlPattern: new RegExp('...'),
    handler: '...',
    options: {
      cacheName: '...',
      plugins: [..., ...],
    },
  }],
  skipWaiting: ...,
});

বৈশিষ্ট্য

GenerateSWConfig

বৈশিষ্ট্য

  • অতিরিক্ত ম্যানিফেস্ট এন্ট্রি

    (স্ট্রিং | ম্যানিফেস্ট এন্ট্রি)[] ঐচ্ছিক

    বিল্ড কনফিগারেশনের অংশ হিসাবে উত্পন্ন যেকোন এন্ট্রি ছাড়াও প্রিক্যাচ করা এন্ট্রিগুলির একটি তালিকা।

  • babelPresetEnvTargets

    স্ট্রিং[] ঐচ্ছিক

    ডিফল্ট মান হল: ["chrome >= 56"]

    পরিষেবা কর্মী বান্ডিল ট্রান্সপিল করার সময় babel-preset-env এ পাস করার লক্ষ্যগুলি

  • cacheId

    স্ট্রিং ঐচ্ছিক

    ক্যাশে নামের জন্য একটি ঐচ্ছিক আইডি প্রিপেন্ড করতে হবে। এটি প্রাথমিকভাবে স্থানীয় উন্নয়নের জন্য উপযোগী যেখানে একই http://localhost:port অরিজিন থেকে একাধিক সাইট পরিবেশিত হতে পারে।

  • খণ্ড

    স্ট্রিং[] ঐচ্ছিক

    এক বা একাধিক খণ্ডের নাম যার সংশ্লিষ্ট আউটপুট ফাইলগুলি প্রিক্যাচে ম্যানিফেস্টে অন্তর্ভুক্ত করা উচিত।

  • ক্লিনআপ আউটডেটেড ক্যাশে

    বুলিয়ান ঐচ্ছিক

    ডিফল্ট মান হল: মিথ্যা

    ওয়ার্কবক্স পুরানো, বেমানান সংস্করণ দ্বারা তৈরি যে কোনো প্রিক্যাচ সনাক্ত এবং মুছে ফেলার চেষ্টা করা উচিত কিনা।

  • ক্লায়েন্ট দাবি

    বুলিয়ান ঐচ্ছিক

    ডিফল্ট মান হল: মিথ্যা

    পরিষেবা কর্মী যে কোনও বিদ্যমান ক্লায়েন্ট সক্রিয় হওয়ার সাথে সাথে নিয়ন্ত্রণ করা শুরু করা উচিত কিনা।

  • ডিরেক্টরি ইনডেক্স

    স্ট্রিং ঐচ্ছিক

    যদি একটি URL-এর জন্য একটি নেভিগেশন অনুরোধ যা শেষ হয় / একটি precached URL এর সাথে মেলে না, তাহলে এই মানটি URL-এর সাথে যুক্ত করা হবে এবং এটি একটি precache মিলের জন্য চেক করা হবে। এটি আপনার ওয়েব সার্ভার তার ডিরেক্টরি সূচী জন্য ব্যবহার করছে কি সেট করা উচিত.

  • ডিজেবল ডেভলগ

    বুলিয়ান ঐচ্ছিক

    ডিফল্ট মান হল: মিথ্যা

  • ক্যাচেবাস্ট ইউআরএল মিলছে না

    RegExp ঐচ্ছিক

    এর সাথে মেলে এমন সম্পদগুলিকে তাদের URL এর মাধ্যমে স্বতন্ত্রভাবে সংস্করণ করা হয়েছে বলে ধরে নেওয়া হবে এবং প্রিক্যাশে পপুলেট করার সময় করা সাধারণ HTTP ক্যাশে-বাস্টিং থেকে অব্যাহতি দেওয়া হবে। প্রয়োজন না হলেও, এটি সুপারিশ করা হয় যে যদি আপনার বিদ্যমান বিল্ড প্রক্রিয়া ইতিমধ্যেই প্রতিটি ফাইলনামে একটি [hash] মান সন্নিবেশ করে, আপনি একটি RegExp প্রদান করেন যা এটি সনাক্ত করবে, কারণ এটি প্রিক্যাচিং করার সময় ব্যান্ডউইথ খরচ কমিয়ে দেবে।

  • বাদ

    (স্ট্রিং | RegExp | ফাংশন)[] ঐচ্ছিক৷

    precache ম্যানিফেস্ট থেকে সম্পদ বাদ দিতে ব্যবহৃত এক বা একাধিক স্পেসিফায়ার। এটি webpack স্ট্যান্ডার্ড exclude বিকল্পের মতো একই নিয়ম অনুসরণ করে ব্যাখ্যা করা হয়। প্রদান না করা হলে, ডিফল্ট মান হল [/\.map$/, /^manifest.*\.js$]

  • খণ্ডগুলি বাদ দিন

    স্ট্রিং[] ঐচ্ছিক

    এক বা একাধিক খণ্ডের নাম যার সংশ্লিষ্ট আউটপুট ফাইলগুলিকে precache ম্যানিফেস্ট থেকে বাদ দেওয়া উচিত৷

  • ignoreURL প্যারামিটার ম্যাচিং

    RegExp[] ঐচ্ছিক

    এই অ্যারের RegExp-এর একটির সাথে মেলে এমন যেকোন সার্চ প্যারামিটার নাম একটি precache মিল খোঁজার আগে সরিয়ে দেওয়া হবে। এটি উপযোগী যদি আপনার ব্যবহারকারীরা এমন URLগুলির অনুরোধ করতে পারে যাতে রয়েছে, উদাহরণস্বরূপ, ট্রাফিকের উত্স ট্র্যাক করতে ব্যবহৃত URL প্যারামিটার৷ প্রদান না করা হলে, ডিফল্ট মান হল [/^utm_/, /^fbclid$/]

  • আমদানি স্ক্রিপ্ট

    স্ট্রিং[] ঐচ্ছিক

    জাভাস্ক্রিপ্ট ফাইলগুলির একটি তালিকা যা জেনারেট করা পরিষেবা কর্মী ফাইলের ভিতরে importScripts() এ পাস করা উচিত। যখন আপনি ওয়ার্কবক্সকে আপনার শীর্ষ-স্তরের পরিষেবা কর্মী ফাইল তৈরি করতে দিতে চান, তবে কিছু অতিরিক্ত কোড অন্তর্ভুক্ত করতে চান, যেমন একটি পুশ ইভেন্ট লিসেনার।

  • importScriptsViaChunks

    স্ট্রিং[] ঐচ্ছিক

    ওয়েবপ্যাক খণ্ডের এক বা একাধিক নাম। সেই অংশগুলির বিষয়বস্তু importScripts() এ কলের মাধ্যমে জেনারেট করা পরিষেবা কর্মীতে অন্তর্ভুক্ত করা হবে।

  • অন্তর্ভুক্ত

    (স্ট্রিং | RegExp | ফাংশন)[] ঐচ্ছিক৷

    precache ম্যানিফেস্টে সম্পদ অন্তর্ভুক্ত করতে ব্যবহৃত এক বা একাধিক স্পেসিফায়ার। এটি webpack স্ট্যান্ডার্ড include বিকল্পের মতো একই নিয়ম অনুসরণ করে ব্যাখ্যা করা হয়।

  • ইনলাইন ওয়ার্কবক্স রানটাইম

    বুলিয়ান ঐচ্ছিক

    ডিফল্ট মান হল: মিথ্যা

    ওয়ার্কবক্স লাইব্রেরির জন্য রানটাইম কোডটি শীর্ষ-স্তরের পরিষেবা কর্মীর মধ্যে অন্তর্ভুক্ত করা উচিত, বা একটি পৃথক ফাইলে বিভক্ত করা উচিত যা পরিষেবা কর্মীর পাশাপাশি স্থাপন করা প্রয়োজন। রানটাইম আলাদা রাখার মানে হল যে প্রতিবার আপনার শীর্ষ-স্তরের পরিষেবা কর্মী পরিবর্তন করার সময় ব্যবহারকারীদের ওয়ার্কবক্স কোড পুনরায় ডাউনলোড করতে হবে না।

  • ম্যানিফেস্ট এন্ট্রি

    ম্যানিফেস্ট এন্ট্রি[] ঐচ্ছিক

  • ম্যানিফেস্ট ট্রান্সফর্মস

    ManifestTransform[] ঐচ্ছিক

    এক বা একাধিক ফাংশন যা জেনারেট করা ম্যানিফেস্টের বিপরীতে ক্রমানুসারে প্রয়োগ করা হবে। যদি modifyURLPrefix বা dontCacheBustURLsMatching ও নির্দিষ্ট করা থাকে, তাহলে তাদের সংশ্লিষ্ট রূপান্তরগুলি প্রথমে প্রয়োগ করা হবে।

  • MaxFileSizeToCacheInBytes

    সংখ্যা ঐচ্ছিক

    ডিফল্ট মান হল: 2097152

    এই মানটি প্রিক্যাচ করা ফাইলগুলির সর্বাধিক আকার নির্ধারণ করতে ব্যবহার করা যেতে পারে। এটি আপনাকে অসাবধানতাবশত আপনার প্যাটার্নগুলির একটির সাথে মিলে যেতে পারে এমন অনেক বড় ফাইলগুলিকে প্রিক্যাচ করা থেকে বাধা দেয়৷

  • মোড

    স্ট্রিং ঐচ্ছিক

    যদি 'উৎপাদন'-এ সেট করা হয়, তাহলে একটি অপ্টিমাইজড পরিষেবা কর্মী বান্ডিল তৈরি করা হবে যা ডিবাগিং তথ্য বাদ দেয়। এখানে স্পষ্টভাবে কনফিগার করা না থাকলে, বর্তমান webpack সংকলনে কনফিগার করা mode মান ব্যবহার করা হবে।

  • modifyURLপ্রিফিক্স

    বস্তু ঐচ্ছিক

    একটি বস্তু ম্যাপিং স্ট্রিং প্রতিস্থাপন স্ট্রিং মান উপসর্গ. এটি ব্যবহার করা যেতে পারে, উদাহরণস্বরূপ, একটি ম্যানিফেস্ট এন্ট্রি থেকে একটি পাথ প্রিফিক্স অপসারণ বা যোগ করতে যদি আপনার ওয়েব হোস্টিং সেটআপ আপনার স্থানীয় ফাইল সিস্টেম সেটআপের সাথে মেলে না। আরও নমনীয়তার বিকল্প হিসাবে, আপনি manifestTransforms বিকল্পটি ব্যবহার করতে পারেন এবং এমন একটি ফাংশন প্রদান করতে পারেন যা ম্যানিফেস্টের এন্ট্রিগুলিকে আপনি যে যুক্তি প্রদান করেন তা ব্যবহার করে পরিবর্তন করে৷

    উদাহরণ ব্যবহার:

    // Replace a '/dist/' prefix with '/', and also prepend
    // '/static' to every URL.
    modifyURLPrefix: {
      '/dist/': '/',
      '': '/static',
    }
    
  • নেভিগেট ফলব্যাক

    স্ট্রিং ঐচ্ছিক

    ডিফল্ট মান হল: null

    নির্দিষ্ট করা থাকলে, প্রিক্যাচ করা হয়নি এমন URLগুলির জন্য সমস্ত নেভিগেশন অনুরোধ প্রদত্ত URL-এ HTML দিয়ে পূরণ করা হবে। আপনাকে অবশ্যই একটি HTML নথির URL পাস করতে হবে যা আপনার precache ম্যানিফেস্টে তালিকাভুক্ত। এটি একটি একক পৃষ্ঠা অ্যাপ দৃশ্যে ব্যবহার করার জন্য বোঝানো হয়েছে, যেখানে আপনি সমস্ত নেভিগেশন সাধারণ অ্যাপ শেল HTML ব্যবহার করতে চান।

  • নেভিগেটFallbackAllowlist

    RegExp[] ঐচ্ছিক

    রেগুলার এক্সপ্রেশনের একটি ঐচ্ছিক বিন্যাস যা কনফিগার করা navigateFallback আচরণ কোন ইউআরএলে প্রযোজ্য তা সীমাবদ্ধ করে। এটি উপযোগী যদি শুধুমাত্র আপনার সাইটের URL-এর একটি উপসেটকে একটি একক পৃষ্ঠা অ্যাপের অংশ হিসাবে বিবেচনা করা হয়। যদি navigateFallbackDenylist এবং navigateFallbackAllowlist উভয়ই কনফিগার করা থাকে, তবে অস্বীকারকারী নজির নেয়।

    দ্রষ্টব্য : একটি নেভিগেশন চলাকালীন প্রতিটি গন্তব্য URL এর বিপরীতে এই RegExps মূল্যায়ন করা হতে পারে। জটিল RegExps ব্যবহার করা এড়িয়ে চলুন, অন্যথায় আপনার ব্যবহারকারীরা আপনার সাইটে নেভিগেট করার সময় বিলম্ব দেখতে পাবেন।

  • নেভিগেট ফলব্যাকডেনিলিস্ট

    RegExp[] ঐচ্ছিক

    রেগুলার এক্সপ্রেশনের একটি ঐচ্ছিক বিন্যাস যা কনফিগার করা navigateFallback আচরণ কোন ইউআরএলে প্রযোজ্য তা সীমাবদ্ধ করে। এটি উপযোগী যদি শুধুমাত্র আপনার সাইটের URL-এর একটি উপসেটকে একটি একক পৃষ্ঠা অ্যাপের অংশ হিসাবে বিবেচনা করা হয়। যদি navigateFallbackDenylist এবং navigateFallbackAllowlist উভয়ই কনফিগার করা থাকে, তবে অস্বীকারকারী অগ্রাধিকার নেয়।

    দ্রষ্টব্য : একটি নেভিগেশন চলাকালীন প্রতিটি গন্তব্য URL এর বিপরীতে এই RegExps মূল্যায়ন করা হতে পারে। জটিল RegExps ব্যবহার করা এড়িয়ে চলুন, অন্যথায় আপনার ব্যবহারকারীরা আপনার সাইটে নেভিগেট করার সময় বিলম্ব দেখতে পাবেন।

  • নেভিগেশনপ্রিলোড

    বুলিয়ান ঐচ্ছিক

    ডিফল্ট মান হল: মিথ্যা

    জেনারেটেড সার্ভিস ওয়ার্কারে নেভিগেশন প্রিলোড সক্ষম করবেন কি না। সত্য হিসাবে সেট করা হলে, আপনাকে অবশ্যই একটি উপযুক্ত প্রতিক্রিয়া কৌশল সেট আপ করতে runtimeCaching ব্যবহার করতে হবে যা নেভিগেশন অনুরোধের সাথে মেলে এবং প্রিলোড করা প্রতিক্রিয়া ব্যবহার করবে।

  • অফলাইন GoogleAnalytics

    বুলিয়ান | GoogleAnalyticsInitializeOptions ঐচ্ছিক

    ডিফল্ট মান হল: মিথ্যা

    অফলাইন Google Analytics-এর জন্য সমর্থন অন্তর্ভুক্ত করতে হবে কিনা তা নিয়ন্ত্রণ করে। true হলে, workbox-google-analytics initialize() কলটি আপনার জেনারেট করা সার্ভিস ওয়ার্কারে যোগ করা হবে। একটি Object সেট করা হলে, সেই অবজেক্টটি initialize() কলে পাস করা হবে, যা আপনাকে আচরণটি কাস্টমাইজ করতে দেয়।

  • রানটাইম ক্যাচিং

    RuntimeCaching[] ঐচ্ছিক

    আপনার পরিষেবা কর্মী তৈরি করতে ওয়ার্কবক্সের বিল্ড টুল ব্যবহার করার সময়, আপনি এক বা একাধিক রানটাইম ক্যাশিং কনফিগারেশন নির্দিষ্ট করতে পারেন। এইগুলি তারপর আপনার সংজ্ঞায়িত ম্যাচ এবং হ্যান্ডলার কনফিগারেশন ব্যবহার করে workbox-routing.registerRoute কলগুলিতে অনুবাদ করা হয়।

    সমস্ত বিকল্পের জন্য, workbox-build.RuntimeCaching ডকুমেন্টেশন দেখুন। নীচের উদাহরণটি দুটি রানটাইম রুট সংজ্ঞায়িত সহ একটি সাধারণ কনফিগারেশন দেখায়:

  • অপেক্ষা করা বাদ দিন

    বুলিয়ান ঐচ্ছিক

    ডিফল্ট মান হল: মিথ্যা

    উত্পন্ন পরিষেবা কর্মীকে skipWaiting() এ একটি নিঃশর্ত কল যোগ করতে হবে কিনা। যদি false , তাহলে এর পরিবর্তে একজন message শ্রোতা যোগ করা হবে, ক্লায়েন্ট পৃষ্ঠাগুলিকে postMessage({type: 'SKIP_WAITING'}) কল করে skipWaiting() ট্রিগার করার অনুমতি দেয় একজন অপেক্ষমাণ পরিষেবা কর্মীকে।

  • উত্সম্যাপ

    বুলিয়ান ঐচ্ছিক

    ডিফল্ট মান হল: সত্য

    উত্পন্ন পরিষেবা কর্মী ফাইলগুলির জন্য একটি উত্সম্যাপ তৈরি করা হবে কিনা।

  • swDest

    স্ট্রিং ঐচ্ছিক

    ডিফল্ট মান হল: "service-worker.js"

    এই প্লাগইন দ্বারা তৈরি পরিষেবা কর্মী ফাইলের সম্পদের নাম।

InjectManifest

এই ক্লাসটি swSrc এর মাধ্যমে প্রদত্ত একটি পরিষেবা কর্মী ফাইল কম্পাইল করা এবং সেই পরিষেবা কর্মীকে ওয়েবপ্যাক অ্যাসেট পাইপলাইনের উপর ভিত্তি করে প্রিক্যাচিংয়ের জন্য URL-এর একটি তালিকা এবং পুনর্বিবেচনা তথ্য ইনজেক্ট করা সমর্থন করে৷

একটি ওয়েবপ্যাক কনফিগারেশনের plugins অ্যারেতে InjectManifest এর একটি উদাহরণ ব্যবহার করুন।

ম্যানিফেস্ট ইনজেকশন করার পাশাপাশি, এই প্লাগইনটি মূল ওয়েবপ্যাক কনফিগারেশনের বিকল্পগুলি ব্যবহার করে swSrc ফাইলের একটি সংকলন সম্পাদন করবে।

// The following lists some common options; see the rest of the documentation
// for the full set of options and defaults.
new InjectManifest({
  exclude: [/.../, '...'],
  maximumFileSizeToCacheInBytes: ...,
  swSrc: '...',
});

বৈশিষ্ট্য

  • নির্মাণকারী

    অকার্যকর

    InjectManifest এর একটি উদাহরণ তৈরি করে।

    constructor ফাংশনটি এর মত দেখাচ্ছে:

    (config: WebpackInjectManifestOptions) => {...}

    • কনফিগারেশন

      WebpackInjectManifestOptions

  • কনফিগারেশন

    WebpackInjectManifestOptions

বৈশিষ্ট্য

default

টাইপ

বস্তু

বৈশিষ্ট্য

  • এসডব্লিউ তৈরি করুন

    প্রশ্ন

  • ইনজেক্ট ম্যানিফেস্ট

    প্রশ্ন