ടെയിൽവിൻഡ് സിഎസ്എസിലെ പർജ് സംവിധാനത്തെക്കുറിച്ചുള്ള സമഗ്രമായ ഗൈഡ്. ഉപയോഗിക്കാത്ത സ്റ്റൈലുകൾ ഒഴിവാക്കി ചെറിയ സിഎസ്എസ് ഫയലുകളിലൂടെ വെബ്സൈറ്റ് വേഗത വർദ്ധിപ്പിക്കുന്നത് എങ്ങനെയെന്ന് വിശദീകരിക്കുന്നു.
ടെയിൽവിൻഡ് സിഎസ്എസ് പർജ് സ്ട്രാറ്റജി: ഉപയോഗിക്കാത്ത സ്റ്റൈലുകൾ ഒഴിവാക്കുന്നതിൽ വൈദഗ്ദ്ധ്യം നേടുക
ടെയിൽവിൻഡ് സിഎസ്എസ് ഒരു യൂട്ടിലിറ്റി-ഫസ്റ്റ് സിഎസ്എസ് ഫ്രെയിംവർക്കാണ്, അത് മുൻകൂട്ടി നിർവചിച്ച സിഎസ്എസ് ക്ലാസുകളുടെ ഒരു വലിയ ലൈബ്രറി നൽകുന്നു. വളരെ ശക്തവും വഴക്കമുള്ളതുമാണെങ്കിലും, ഈ സമൃദ്ധി പ്രൊഡക്ഷനിൽ ഉപയോഗിക്കാത്ത ധാരാളം സിഎസ്എസിലേക്ക് നയിച്ചേക്കാം, ഇത് വെബ്സൈറ്റിന്റെ പ്രകടനത്തെ ബാധിക്കുന്നു. ഈ ലേഖനം ടെയിൽവിൻഡ് സിഎസ്എസിന്റെ പർജ് പ്രവർത്തനത്തെക്കുറിച്ച് ആഴത്തിൽ പരിശോധിക്കുന്നു, ചെറിയ സിഎസ്എസ് ഫയലുകൾക്കും വേഗതയേറിയതും കാര്യക്ഷമവുമായ വെബ്സൈറ്റിനായി ഉപയോഗിക്കാത്ത സ്റ്റൈലുകൾ എങ്ങനെ ഫലപ്രദമായി ഒഴിവാക്കാമെന്ന് വിശദീകരിക്കുന്നു. ഈ ഗൈഡ് ലോകമെമ്പാടുമുള്ള ഡെവലപ്പർമാർക്ക് അവരുടെ പ്രോജക്റ്റിന്റെ വലുപ്പമോ ഭൂമിശാസ്ത്രപരമായ സ്ഥാനമോ പരിഗണിക്കാതെ പ്രസക്തമാണ്.
പ്രശ്നം മനസ്സിലാക്കൽ: ഉപയോഗിക്കാത്ത സിഎസ്എസും അതിൻ്റെ സ്വാധീനവും
നിങ്ങൾ ടെയിൽവിൻഡ് സിഎസ്എസ് ഉപയോഗിക്കുമ്പോൾ, പ്രത്യേകിച്ച് വലിയ പ്രോജക്റ്റുകളിൽ, ലഭ്യമായ യൂട്ടിലിറ്റി ക്ലാസുകളുടെ ഒരു ചെറിയ ഭാഗം മാത്രമേ നിങ്ങൾ ഉപയോഗിക്കാൻ സാധ്യതയുള്ളൂ. മുഴുവൻ ടെയിൽവിൻഡ് സിഎസ്എസ് ഫയലും വളരെ വലുതാണ് (മിനിഫൈഡ് രൂപത്തിൽ നിരവധി മെഗാബൈറ്റുകൾ), ഇത് നിങ്ങളുടെ പ്രൊഡക്ഷൻ ബിൽഡിൽ പൂർണ്ണമായി ഉൾപ്പെടുത്തുന്നത് നിങ്ങളുടെ വെബ്സൈറ്റിന്റെ ലോഡിംഗ് സമയം ഗണ്യമായി കുറയ്ക്കും. കാരണം, നിങ്ങളുടെ പേജുകളിലെ ഒരു ഘടകങ്ങളിലും യഥാർത്ഥത്തിൽ പ്രയോഗിക്കാത്ത സ്റ്റൈലുകൾ ആണെങ്കിലും, ബ്രൗസറിന് ഒരു വലിയ സിഎസ്എസ് ഫയൽ ഡൗൺലോഡ് ചെയ്യുകയും പാഴ്സ് ചെയ്യുകയും വേണം. വേഗത കുറഞ്ഞ വെബ്സൈറ്റ് മോശം ഉപയോക്തൃ അനുഭവത്തിനും ഉയർന്ന ബൗൺസ് നിരക്കിനും കാരണമാകുന്നു, കൂടാതെ എസ്ഇഒ റാങ്കിംഗിനെയും പ്രതികൂലമായി ബാധിക്കും. നിങ്ങളുടെ ഉപയോക്താക്കൾ വടക്കേ അമേരിക്കയിലോ യൂറോപ്പിലോ ഏഷ്യയിലോ ആഫ്രിക്കയിലോ ആകട്ടെ, ഇത് സത്യമാണ്. ആഗോളതലത്തിൽ, ഉപയോക്താക്കൾ വേഗതയേറിയതും പ്രതികരണശേഷിയുള്ളതുമായ വെബ്സൈറ്റുകൾ പ്രതീക്ഷിക്കുന്നു.
ഉപയോഗിക്കാത്ത സിഎസ്എസ് ദോഷകരമാകുന്നത് എന്തുകൊണ്ട്:
- പേജ് ലോഡ് സമയം വർദ്ധിക്കുന്നു: വലിയ സിഎസ്എസ് ഫയലുകൾ ഡൗൺലോഡ് ചെയ്യാനും പാഴ്സ് ചെയ്യാനും കൂടുതൽ സമയമെടുക്കും, ഇത് പേജ് ലോഡ് സമയത്തെ നേരിട്ട് ബാധിക്കുന്നു.
- ബാൻഡ്വിഡ്ത്ത് പാഴാകുന്നു: ഉപയോക്താക്കൾ ഒരിക്കലും ഉപയോഗിക്കാത്ത സിഎസ്എസ് നിയമങ്ങൾ ഡൗൺലോഡ് ചെയ്യുന്നു, ഇത് ബാൻഡ്വിഡ്ത്ത് പാഴാക്കുന്നു, പ്രത്യേകിച്ച് മൊബൈൽ ഉപകരണങ്ങളിൽ.
- പ്രകടനത്തിലെ തടസ്സം: ബ്രൗസറുകൾ ഉപയോഗിക്കാത്ത സ്റ്റൈലുകൾ പാഴ്സ് ചെയ്യാനും പ്രയോഗിക്കാനും സമയം ചെലവഴിക്കുന്നു, ഇത് റെൻഡറിംഗ് പ്രകടനത്തെ ബാധിക്കുന്നു.
പരിഹാരം: ടെയിൽവിൻഡ് സിഎസ്എസ് പർജ് പ്രവർത്തനം
ടെയിൽവിൻഡ് സിഎസ്എസ് ഒരു ശക്തമായ പർജ് പ്രവർത്തനം ഉൾക്കൊള്ളുന്നു, അത് ബിൽഡ് പ്രോസസ്സിനിടെ ഉപയോഗിക്കാത്ത സിഎസ്എസ് സ്റ്റൈലുകൾ സ്വയമേവ നീക്കംചെയ്യുന്നു. നിങ്ങളുടെ എച്ച്ടിഎംഎൽ, ജാവാസ്ക്രിപ്റ്റ്, മറ്റ് ടെംപ്ലേറ്റ് ഫയലുകൾ എന്നിവ വിശകലനം ചെയ്ത് ഏതൊക്കെ സിഎസ്എസ് ക്ലാസുകളാണ് യഥാർത്ഥത്തിൽ ഉപയോഗിക്കുന്നതെന്ന് കണ്ടെത്തുകയും തുടർന്ന് ഉപയോഗിക്കാത്തവയെല്ലാം നീക്കം ചെയ്യുകയും ചെയ്യുന്നു. ഈ പ്രക്രിയ വളരെ ചെറിയ സിഎസ്എസ് ഫയലിലേക്ക് നയിക്കുന്നു, ഇത് വെബ്സൈറ്റിന്റെ പ്രകടനം മെച്ചപ്പെടുത്തുന്നു.
പർജ് പ്രക്രിയ എങ്ങനെ പ്രവർത്തിക്കുന്നു:
- ഫയലുകൾ സ്കാൻ ചെയ്യുന്നു: ടെയിൽവിൻഡ് സിഎസ്എസ് നിങ്ങൾ വ്യക്തമാക്കിയ ഫയലുകൾ (ഉദാ. എച്ച്ടിഎംഎൽ, ജാവാസ്ക്രിപ്റ്റ്, പിഎച്ച്പി, വ്യൂ ടെംപ്ലേറ്റുകൾ) സിഎസ്എസ് ക്ലാസ് നാമങ്ങൾക്കായി വിശകലനം ചെയ്യുന്നു.
- ഉപയോഗിച്ച ക്ലാസുകൾ കണ്ടെത്തുന്നു: നിങ്ങളുടെ പ്രോജക്റ്റിൽ യഥാർത്ഥത്തിൽ ഉപയോഗിക്കുന്ന എല്ലാ സിഎസ്എസ് ക്ലാസുകളും ഇത് കണ്ടെത്തുന്നു.
- ഉപയോഗിക്കാത്ത ക്ലാസുകൾ നീക്കംചെയ്യുന്നു: ബിൽഡ് പ്രക്രിയയിൽ, കണ്ടെത്തിയ ഉപയോഗിച്ച ക്ലാസുകളുമായി ബന്ധമില്ലാത്ത എല്ലാ സിഎസ്എസ് നിയമങ്ങളും ടെയിൽവിൻഡ് സിഎസ്എസ് നീക്കംചെയ്യുന്നു.
- ഒപ്റ്റിമൈസ് ചെയ്ത സിഎസ്എസ് ജനറേറ്റ് ചെയ്യുന്നു: അവസാന ഔട്ട്പുട്ട് നിങ്ങളുടെ വെബ്സൈറ്റിന് യഥാർത്ഥത്തിൽ ആവശ്യമായ സ്റ്റൈലുകൾ മാത്രം അടങ്ങുന്ന ഉയർന്ന ഒപ്റ്റിമൈസ് ചെയ്ത സിഎസ്എസ് ഫയലാണ്.
`tailwind.config.js`-ൽ പർജ് ഓപ്ഷൻ കോൺഫിഗർ ചെയ്യുന്നു
പർജ് കോൺഫിഗറേഷനാണ് ഉപയോഗിക്കാത്ത സ്റ്റൈലുകൾ ഒഴിവാക്കുന്ന പ്രക്രിയയുടെ കാതൽ. ഉപയോഗിച്ച ക്ലാസ് നാമങ്ങൾക്കായി ഏതൊക്കെ ഫയലുകൾ സ്കാൻ ചെയ്യണമെന്ന് ഇത് ടെയിൽവിൻഡ് സിഎസ്എസിനോട് പറയുന്നു. ഈ കോൺഫിഗറേഷൻ നിങ്ങളുടെ `tailwind.config.js` ഫയലിലാണ് സ്ഥിതിചെയ്യുന്നത്.ഉദാഹരണ കോൺഫിഗറേഷൻ:
module.exports = {
purge: {
enabled: process.env.NODE_ENV === 'production',
content: [
'./src/**/*.html',
'./src/**/*.vue',
'./src/**/*.jsx',
'./src/**/*.js',
'./src/**/*.php',
// Add any other file types that contain Tailwind classes
],
},
theme: {
extend: {},
},
variants: {},
plugins: [],
}
കോൺഫിഗറേഷൻ ഓപ്ഷനുകളുടെ വിശദീകരണം:
- `enabled`: പർജ് പ്രവർത്തനം പ്രവർത്തനക്ഷമമാക്കിയിട്ടുണ്ടോ എന്ന് ഈ ഓപ്ഷൻ നിയന്ത്രിക്കുന്നു. പ്രൊഡക്ഷൻ എൻവയോൺമെന്റുകളിൽ മാത്രം ഇത് പ്രവർത്തനക്ഷമമാക്കുന്നതാണ് നല്ലത് (ഉദാ. `process.env.NODE_ENV === 'production'`). ഇത് ഡെവലപ്മെന്റ് സമയത്ത് അനാവശ്യമായ പർജിംഗ് തടയുന്നു, ഇത് ഡെവലപ്മെന്റ് പ്രക്രിയയെ മന്ദഗതിയിലാക്കും.
- `content`: സിഎസ്എസ് ക്ലാസ് നാമങ്ങൾക്കായി ടെയിൽവിൻഡ് സിഎസ്എസ് സ്കാൻ ചെയ്യുന്ന ഫയൽ പാതകളുടെ ഒരു നിരയാണിത്. എച്ച്ടിഎംഎൽ, വ്യൂ കോമ്പോണന്റുകൾ, ജാവാസ്ക്രിപ്റ്റ് ഫയലുകൾ, പിഎച്ച്പി ടെംപ്ലേറ്റുകൾ എന്നിവ പോലുള്ള ടെയിൽവിൻഡ് സിഎസ്എസ് ക്ലാസുകൾ അടങ്ങുന്ന എല്ലാ ഫയൽ തരങ്ങളും നിങ്ങൾ ഉൾപ്പെടുത്തണം. ഉപയോഗിച്ച എല്ലാ ക്ലാസുകളും ശരിയായി തിരിച്ചറിഞ്ഞിട്ടുണ്ടെന്ന് ഉറപ്പാക്കാൻ ഇവിടെ കൃത്യതയും സമഗ്രതയും നിർണായകമാണ്.
പർജ് കോൺഫിഗറേഷനുള്ള മികച്ച രീതികൾ
പർജ് ഓപ്ഷൻ ശരിയായി കോൺഫിഗർ ചെയ്യുന്നത് ഉപയോഗിക്കാത്ത സ്റ്റൈലുകൾ ഫലപ്രദമായി ഒഴിവാക്കുന്നതിന് നിർണായകമാണ്. മികച്ച ഫലങ്ങൾ ഉറപ്പാക്കുന്നതിനുള്ള ചില മികച്ച രീതികൾ ഇതാ:
1. നിർദ്ദിഷ്ട ഫയൽ പാതകൾ ഉപയോഗിക്കുക:
`'./**/*'` പോലുള്ള വളരെ വിശാലമായ ഫയൽ പാതകൾ ഉപയോഗിക്കുന്നത് ഒഴിവാക്കുക. ഇത് സൗകര്യപ്രദമായി തോന്നാമെങ്കിലും, ഇത് കൂടുതൽ ബിൽഡ് സമയങ്ങളിലേക്കും തെറ്റായ ഫലങ്ങളിലേക്കും നയിച്ചേക്കാം. പകരം, പ്രസക്തമായ ഫയലുകളെ മാത്രം ലക്ഷ്യമിടുന്ന നിർദ്ദിഷ്ട ഫയൽ പാതകൾ ഉപയോഗിക്കുക. ഉദാഹരണത്തിന്, നിങ്ങളുടെ എച്ച്ടിഎംഎൽ ഫയലുകൾ `./src/pages` ഡയറക്ടറിയിലാണെങ്കിൽ, `'./**/*.html'` എന്നതിന് പകരം `'./src/pages/**/*.html'` ഉപയോഗിക്കുക.
ഉദാഹരണം:
module.exports = {
purge: {
enabled: process.env.NODE_ENV === 'production',
content: [
'./src/pages/**/*.html',
'./src/components/**/*.vue',
'./src/js/**/*.js',
],
},
// ...
}
2. ഡൈനാമിക് ക്ലാസ് നാമങ്ങളെക്കുറിച്ച് ശ്രദ്ധിക്കുക:
നിങ്ങൾ ഡൈനാമിക് ക്ലാസ് നാമങ്ങൾ ഉപയോഗിക്കുകയാണെങ്കിൽ (ഉദാ. ചില വ്യവസ്ഥകളെ അടിസ്ഥാനമാക്കി ക്ലാസുകൾ ചേർക്കാനോ നീക്കംചെയ്യാനോ ജാവാസ്ക്രിപ്റ്റ് ഉപയോഗിക്കുന്നത്), പർജ് പ്രവർത്തനത്തിന് അവ ശരിയായി കണ്ടെത്താൻ കഴിഞ്ഞേക്കില്ല. അത്തരം സന്ദർഭങ്ങളിൽ, നിങ്ങൾ `safelist` ഓപ്ഷൻ ഉപയോഗിക്കേണ്ടതുണ്ട്.
3. `safelist` ഓപ്ഷൻ ഉപയോഗിക്കുക:
`safelist` ഓപ്ഷൻ, സ്കാനിംഗ് പ്രക്രിയയിൽ കണ്ടെത്തിയില്ലെങ്കിൽ പോലും, അവസാന സിഎസ്എസ് ഫയലിൽ എല്ലായ്പ്പോഴും ഉൾപ്പെടുത്തേണ്ട സിഎസ്എസ് ക്ലാസുകൾ വ്യക്തമായി നിർവചിക്കാൻ നിങ്ങളെ അനുവദിക്കുന്നു. ഡൈനാമിക് ക്ലാസ് നാമങ്ങൾ, തേർഡ്-പാർട്ടി ലൈബ്രറികളിൽ ഉപയോഗിക്കുന്ന ക്ലാസുകൾ, അല്ലെങ്കിൽ ജാവാസ്ക്രിപ്റ്റ് വഴി ജനറേറ്റ് ചെയ്യുന്ന ക്ലാസുകൾ എന്നിവയ്ക്ക് ഇത് പ്രത്യേകിച്ചും ഉപയോഗപ്രദമാണ്.
ഉദാഹരണം:
module.exports = {
purge: {
enabled: process.env.NODE_ENV === 'production',
content: [
'./src/**/*.html',
'./src/**/*.vue',
'./src/**/*.js',
],
safelist: [
'bg-red-500',
'text-white',
'hidden',
'lg:block'
],
},
// ...
}
ഈ ഉദാഹരണത്തിൽ, `bg-red-500`, `text-white`, `hidden`, `lg:block` എന്നീ ക്ലാസുകൾ സ്കാൻ ചെയ്ത ഫയലുകളിൽ നേരിട്ട് കണ്ടെത്തിയില്ലെങ്കിലും അവസാന സിഎസ്എസ് ഫയലിൽ എല്ലായ്പ്പോഴും ഉൾപ്പെടുത്തും.
4. `safelist`-ലെ റെഗുലർ എക്സ്പ്രഷനുകൾ:
`safelist` ഓപ്ഷൻ റെഗുലർ എക്സ്പ്രഷനുകളെയും പിന്തുണയ്ക്കുന്നു, ഒരു പാറ്റേൺ അടിസ്ഥാനമാക്കി ഒന്നിലധികം ക്ലാസുകളെ പൊരുത്തപ്പെടുത്താൻ നിങ്ങളെ അനുവദിക്കുന്നു. സമാനമായ നാമകരണ രീതി പിന്തുടരുന്ന ക്ലാസുകളുടെ ഒരു ശ്രേണി നിങ്ങൾക്കുണ്ടെങ്കിൽ ഇത് ഉപയോഗപ്രദമാണ്.
ഉദാഹരണം:
module.exports = {
purge: {
enabled: process.env.NODE_ENV === 'production',
content: [
'./src/**/*.html',
'./src/**/*.vue',
'./src/**/*.js',
],
safelist: [
/^grid-cols-/, // Matches classes like grid-cols-1, grid-cols-2, etc.
],
},
// ...
}
ഈ ഉദാഹരണം `grid-cols-` എന്ന് തുടങ്ങുന്ന എല്ലാ ക്ലാസുകളുമായി പൊരുത്തപ്പെടുന്നതിന് ഒരു റെഗുലർ എക്സ്പ്രഷൻ ഉപയോഗിക്കുന്നു, എല്ലാ ഗ്രിഡ് കോളം ക്ലാസുകളും അവസാന സിഎസ്എസ് ഫയലിൽ ഉൾപ്പെടുത്തിയിട്ടുണ്ടെന്ന് ഉറപ്പാക്കുന്നു.
5. `layers` സേഫ്ലിസ്റ്റ് ഉപയോഗിക്കുക:
ടെയിൽവിൻഡ് v3 ലെയറുകൾ അവതരിപ്പിച്ചു. കസ്റ്റം സ്റ്റൈലുകൾ ചേർക്കാൻ നിങ്ങൾ `@layer` ഡയറക്റ്റീവുകൾ ഉപയോഗിക്കുന്നുണ്ടെങ്കിൽ, ലെയർ നാമങ്ങൾ സേഫ്ലിസ്റ്റ് ചെയ്യേണ്ടി വന്നേക്കാം.
module.exports = {
purge: {
enabled: process.env.NODE_ENV === 'production',
content: [
'./src/**/*.html',
'./src/**/*.vue',
'./src/**/*.js',
],
safelist: [
'layer-base',
'layer-components',
'layer-utilities',
],
},
// ...
}
6. നിങ്ങളുടെ പ്രൊഡക്ഷൻ സിഎസ്എസ് പരിശോധിക്കുക:
പർജ് പ്രക്രിയ പ്രവർത്തിപ്പിച്ച ശേഷം, ആവശ്യമായ എല്ലാ സ്റ്റൈലുകളും ഉൾപ്പെടുത്തിയിട്ടുണ്ടെന്നും അപ്രതീക്ഷിതമായ സ്റ്റൈലുകളൊന്നും നീക്കം ചെയ്തിട്ടില്ലെന്നും ഉറപ്പാക്കാൻ നിങ്ങളുടെ പ്രൊഡക്ഷൻ സിഎസ്എസ് ഫയൽ എപ്പോഴും പരിശോധിക്കുക. നിങ്ങളുടെ പർജ് കോൺഫിഗറേഷനിലെ എന്തെങ്കിലും പ്രശ്നങ്ങൾ തിരിച്ചറിയാനും ആവശ്യമായ ക്രമീകരണങ്ങൾ വരുത്താനും ഇത് നിങ്ങളെ സഹായിക്കും.
സാധാരണ പർജ് പ്രശ്നങ്ങൾ പരിഹരിക്കൽ
ശ്രദ്ധാപൂർവ്വമായ കോൺഫിഗറേഷൻ ഉണ്ടായിരുന്നിട്ടും, പർജ് പ്രവർത്തനം യഥാർത്ഥത്തിൽ ആവശ്യമുള്ള സ്റ്റൈലുകൾ നീക്കംചെയ്യുകയോ ഉപയോഗിക്കാത്ത സ്റ്റൈലുകൾ നീക്കം ചെയ്യുന്നതിൽ പരാജയപ്പെടുകയോ ചെയ്യുന്ന സാഹചര്യങ്ങൾ നിങ്ങൾ നേരിട്ടേക്കാം. ചില സാധാരണ പ്രശ്നങ്ങളും അവയുടെ പരിഹാരങ്ങളും ഇതാ:
1. സ്റ്റൈലുകൾ കാണുന്നില്ല:
നിങ്ങളുടെ പ്രൊഡക്ഷൻ ബിൽഡിൽ ചില സ്റ്റൈലുകൾ കാണുന്നില്ലെന്ന് നിങ്ങൾ ശ്രദ്ധയിൽപ്പെട്ടാൽ, പർജ് പ്രവർത്തനത്തിന് നിങ്ങളുടെ ഫയലുകളിലെ അനുബന്ധ സിഎസ്എസ് ക്ലാസുകൾ കണ്ടെത്താൻ കഴിയുന്നില്ല എന്നതിനാലാകാം ഇത്. ഇതിന് കാരണങ്ങൾ ഇവയാകാം:
- തെറ്റായ ഫയൽ പാതകൾ: നിങ്ങളുടെ `content` നിരയിലെ ഫയൽ പാതകൾ കൃത്യമാണെന്നും പ്രസക്തമായ എല്ലാ ഫയലുകളും ഉൾക്കൊള്ളുന്നുണ്ടെന്നും രണ്ടുതവണ പരിശോധിക്കുക.
- ഡൈനാമിക് ക്ലാസ് നാമങ്ങൾ: ഏതെങ്കിലും ഡൈനാമിക് ക്ലാസ് നാമങ്ങൾ വ്യക്തമായി ഉൾപ്പെടുത്താൻ `safelist` ഓപ്ഷൻ ഉപയോഗിക്കുക.
- ജാവാസ്ക്രിപ്റ്റ് വഴി ജനറേറ്റ് ചെയ്ത ക്ലാസുകൾ: നിങ്ങൾ ജാവാസ്ക്രിപ്റ്റ് ഉപയോഗിച്ച് ക്ലാസുകൾ ജനറേറ്റ് ചെയ്യുകയാണെങ്കിൽ, ആ ക്ലാസുകളും `safelist` ഓപ്ഷനിൽ ഉൾപ്പെടുത്തിയിട്ടുണ്ടെന്ന് ഉറപ്പാക്കുക.
2. ഉപയോഗിക്കാത്ത സ്റ്റൈലുകൾ നീക്കം ചെയ്തിട്ടില്ല:
നിങ്ങളുടെ പ്രൊഡക്ഷൻ സിഎസ്എസ് ഫയലിൽ ഇപ്പോഴും ഉപയോഗിക്കാത്ത സ്റ്റൈലുകൾ ഉണ്ടെന്ന് നിങ്ങൾ കണ്ടെത്തുകയാണെങ്കിൽ, അതിന് കാരണം ഇവയാകാം:
- ഡെവലപ്മെന്റ് ഡിപൻഡൻസികൾ: ചിലപ്പോൾ, ഡെവലപ്മെന്റ് ഡിപൻഡൻസികൾക്ക് നിങ്ങളുടെ ബിൽഡിലേക്ക് സിഎസ്എസ് ചേർക്കാൻ കഴിയും. ഈ ഡിപൻഡൻസികൾ നിങ്ങളുടെ പ്രൊഡക്ഷൻ ബിൽഡിൽ ഉൾപ്പെടുത്തിയിട്ടില്ലെന്ന് ഉറപ്പാക്കുക.
- അക്ഷരത്തെറ്റുകൾ: നിങ്ങളുടെ സിഎസ്എസ് ക്ലാസ് നാമങ്ങളിൽ എന്തെങ്കിലും അക്ഷരത്തെറ്റുകൾ ഉണ്ടോയെന്ന് രണ്ടുതവണ പരിശോധിക്കുക. ഒരു ചെറിയ അക്ഷരത്തെറ്റ് പോലും ഉപയോഗിക്കാത്ത സ്റ്റൈലുകൾ തിരിച്ചറിയുന്നതിനും നീക്കം ചെയ്യുന്നതിനും പർജ് പ്രവർത്തനത്തെ തടഞ്ഞേക്കാം.
- വളരെ വിശാലമായ ഫയൽ പാതകൾ: നേരത്തെ സൂചിപ്പിച്ചതുപോലെ, നിങ്ങളുടെ `content` നിരയിൽ വളരെ വിശാലമായ ഫയൽ പാതകൾ ഉപയോഗിക്കുന്നത് ഒഴിവാക്കുക, കാരണം ഇത് തെറ്റായ ഫലങ്ങളിലേക്ക് നയിച്ചേക്കാം.
3. ബിൽഡ് പ്രോസസ്സ് പിശകുകൾ:
പർജ് പ്രവർത്തനവുമായി ബന്ധപ്പെട്ട് ബിൽഡ് പ്രക്രിയയിൽ പിശകുകൾ നേരിടുകയാണെങ്കിൽ, അതിന് കാരണം ഇവയാകാം:
- തെറ്റായ കോൺഫിഗറേഷൻ: നിങ്ങളുടെ `tailwind.config.js` ഫയലിൽ എന്തെങ്കിലും സിന്റാക്സ് പിശകുകളോ തെറ്റായ കോൺഫിഗറേഷൻ ഓപ്ഷനുകളോ ഉണ്ടോയെന്ന് രണ്ടുതവണ പരിശോധിക്കുക.
- കാലഹരണപ്പെട്ട ഡിപൻഡൻസികൾ: നിങ്ങൾ ടെയിൽവിൻഡ് സിഎസ്എസിന്റെയും അതിന്റെ ഡിപൻഡൻസികളുടെയും ഏറ്റവും പുതിയ പതിപ്പുകളാണ് ഉപയോഗിക്കുന്നതെന്ന് ഉറപ്പാക്കുക.
- പൊരുത്തപ്പെടാത്ത പ്ലഗിനുകൾ: നിങ്ങൾ മറ്റ് പോസ്റ്റ്സിഎസ്എസ് പ്ലഗിനുകൾ ഉപയോഗിക്കുകയാണെങ്കിൽ, അവ ടെയിൽവിൻഡ് സിഎസ്എസ് പർജ് പ്രവർത്തനവുമായി പൊരുത്തപ്പെടുന്നില്ലായിരിക്കാം. പ്രശ്നം പരിഹരിക്കുമോ എന്നറിയാൻ മറ്റ് പ്ലഗിനുകൾ പ്രവർത്തനരഹിതമാക്കാൻ ശ്രമിക്കുക.
വിവിധ ഫ്രെയിംവർക്കുകളിലുടനീളമുള്ള ഉദാഹരണങ്ങൾ
ഉപയോഗിക്കാത്ത ടെയിൽവിൻഡ് സിഎസ്എസ് സ്റ്റൈലുകൾ ഒഴിവാക്കുന്നതിനുള്ള പ്രധാന തത്വങ്ങൾ വിവിധ ഫ്രെയിംവർക്കുകളിലും ഒരുപോലെയാണ്. എന്നിരുന്നാലും, ബിൽഡ് ടൂളുകളും പ്രോജക്റ്റ് ഘടനയും അനുസരിച്ച് നിർദ്ദിഷ്ട നടപ്പാക്കൽ വിശദാംശങ്ങൾ അല്പം വ്യത്യാസപ്പെടാം.
1. റിയാക്ട് പ്രോജക്റ്റിൽ ടെയിൽവിൻഡ് സിഎസ്എസ് പർജ് ചെയ്യൽ (ക്രിയേറ്റ് റിയാക്ട് ആപ്പ്):
ഒരു ക്രിയേറ്റ് റിയാക്ട് ആപ്പ് പ്രോജക്റ്റിൽ, നിങ്ങളുടെ `tailwind.config.js` ഫയലിൽ പർജ് ഓപ്ഷൻ ഇനിപ്പറയുന്ന രീതിയിൽ കോൺഫിഗർ ചെയ്യാം:
module.exports = {
purge: {
enabled: process.env.NODE_ENV === 'production',
content: [
'./src/**/*.js',
'./src/**/*.jsx',
'./public/index.html',
],
},
// ...
}
നിങ്ങളുടെ എല്ലാ ജാവാസ്ക്രിപ്റ്റ്, ജെഎസ്എക്സ് ഫയലുകളും `content` നിരയിൽ ഉൾപ്പെടുത്തുന്നുവെന്ന് ഉറപ്പാക്കുക. നിങ്ങൾ എച്ച്ടിഎംഎൽ-ൽ നേരിട്ട് ടെയിൽവിൻഡ് സിഎസ്എസ് ക്ലാസുകൾ ഉപയോഗിക്കുകയാണെങ്കിൽ നിങ്ങളുടെ `public/index.html` ഫയലും ഉൾപ്പെടുത്തണം.
2. വ്യൂ.ജെഎസ് പ്രോജക്റ്റിൽ ടെയിൽവിൻഡ് സിഎസ്എസ് പർജ് ചെയ്യൽ (വ്യൂ സിഎൽഐ):
ഒരു വ്യൂ സിഎൽഐ പ്രോജക്റ്റിൽ, നിങ്ങളുടെ `tailwind.config.js` ഫയലിൽ പർജ് ഓപ്ഷൻ ഇനിപ്പറയുന്ന രീതിയിൽ കോൺഫിഗർ ചെയ്യാം:
module.exports = {
purge: {
enabled: process.env.NODE_ENV === 'production',
content: [
'./src/**/*.vue',
'./src/**/*.js',
],
},
// ...
}
നിങ്ങളുടെ എല്ലാ വ്യൂ കോമ്പോണന്റ് ഫയലുകളും ജാവാസ്ക്രിപ്റ്റ് ഫയലുകളും `content` നിരയിൽ ഉൾപ്പെടുത്തുക.
3. നെക്സ്റ്റ്.ജെഎസ് പ്രോജക്റ്റിൽ ടെയിൽവിൻഡ് സിഎസ്എസ് പർജ് ചെയ്യൽ:
നെക്സ്റ്റ്.ജെഎസ് സാധാരണയായി അതിന്റെ ബിൽറ്റ്-ഇൻ സിഎസ്എസ് പിന്തുണ ഉപയോഗിച്ച് പർജിംഗ് പ്രക്രിയ സ്വയമേവ കൈകാര്യം ചെയ്യുന്നു. എന്നിരുന്നാലും, പ്രക്രിയ മെച്ചപ്പെടുത്തുന്നതിന് നിങ്ങളുടെ `tailwind.config.js` ഫയലിൽ പർജ് ഓപ്ഷൻ കോൺഫിഗർ ചെയ്യാൻ നിങ്ങൾക്ക് കഴിയും:
module.exports = {
purge: {
enabled: process.env.NODE_ENV === 'production',
content: [
'./pages/**/*.js',
'./components/**/*.js',
],
},
// ...
}
നിങ്ങളുടെ പേജ്, കോമ്പോണന്റ് ഫയലുകൾ `content` നിരയിൽ ഉൾപ്പെടുത്തുക. ബിൽഡ് പ്രക്രിയയിൽ നെക്സ്റ്റ്.ജെഎസ് ഉപയോഗിക്കാത്ത ടെയിൽവിൻഡ് സിഎസ്എസ് സ്റ്റൈലുകൾ സ്വയമേവ കണ്ടെത്തുകയും നീക്കം ചെയ്യുകയും ചെയ്യും.
4. ലാറവെൽ പ്രോജക്റ്റിൽ ടെയിൽവിൻഡ് സിഎസ്എസ് പർജ് ചെയ്യൽ:
ടെയിൽവിൻഡ് സിഎസ്എസ് ഉപയോഗിക്കുന്ന ലാറവെൽ പ്രോജക്റ്റുകൾക്ക്, കോൺഫിഗറേഷൻ സമാനമാണ്. നിങ്ങളുടെ ബ്ലേഡ് ടെംപ്ലേറ്റുകളും ഏതെങ്കിലും ജാവാസ്ക്രിപ്റ്റ് ഫയലുകളും സ്കാൻ ചെയ്തിട്ടുണ്ടെന്ന് ഉറപ്പാക്കുക.
module.exports = {
purge: {
enabled: process.env.NODE_ENV === 'production',
content: [
'./resources/**/*.blade.php',
'./resources/**/*.vue',
'./resources/**/*.js',
],
},
// ...
}
പ്രകടന അളവ്: പർജ് ചെയ്യുന്നതിന് മുമ്പും ശേഷവും
പർജ് പ്രവർത്തനത്തിന്റെ ഫലപ്രാപ്തി വിലയിരുത്താനുള്ള ഏറ്റവും നല്ല മാർഗം അത് പ്രവർത്തനക്ഷമമാക്കുന്നതിന് മുമ്പും ശേഷവും നിങ്ങളുടെ വെബ്സൈറ്റിന്റെ പ്രകടനം അളക്കുക എന്നതാണ്. പ്രകടനം അളക്കാൻ നിങ്ങൾക്ക് വിവിധ ഉപകരണങ്ങൾ ഉപയോഗിക്കാം, ഉദാഹരണത്തിന്:
- ഗൂഗിൾ പേജ്സ്പീഡ് ഇൻസൈറ്റ്സ്: ഈ ഉപകരണം നിങ്ങളുടെ വെബ്സൈറ്റിന്റെ പ്രകടനത്തെക്കുറിച്ച് വിലപ്പെട്ട ഉൾക്കാഴ്ചകൾ നൽകുകയും മെച്ചപ്പെടുത്തലിനുള്ള നിർദ്ദേശങ്ങൾ നൽകുകയും ചെയ്യുന്നു.
- ലൈറ്റ്ഹൗസ്: വെബ് പേജുകളുടെ ഗുണനിലവാരം മെച്ചപ്പെടുത്തുന്നതിനുള്ള ഒരു ഓപ്പൺ സോഴ്സ്, ഓട്ടോമേറ്റഡ് ഉപകരണമാണ് ലൈറ്റ്ഹൗസ്. നിങ്ങൾക്ക് ഇത് ക്രോം ഡെവ്ടൂൾസിലോ നോഡ്.ജെഎസ് മൊഡ്യൂളായോ പ്രവർത്തിപ്പിക്കാം.
- വെബ്പേജ്ടെസ്റ്റ്: വിവിധ സ്ഥലങ്ങളിൽ നിന്നും വ്യത്യസ്ത ബ്രൗസർ കോൺഫിഗറേഷനുകളോടെയും നിങ്ങളുടെ വെബ്സൈറ്റിന്റെ പ്രകടനം പരിശോധിക്കാൻ ഈ ഉപകരണം നിങ്ങളെ അനുവദിക്കുന്നു.
ഉപയോഗിക്കാത്ത ടെയിൽവിൻഡ് സിഎസ്എസ് സ്റ്റൈലുകൾ ഒഴിവാക്കുന്നതിന് മുമ്പും ശേഷവും നിങ്ങളുടെ വെബ്സൈറ്റിന്റെ പേജ് ലോഡ് സമയം, സിഎസ്എസ് ഫയൽ വലുപ്പം, മറ്റ് പ്രകടന അളവുകൾ എന്നിവ അളക്കുന്നതിലൂടെ, ഒപ്റ്റിമൈസേഷന്റെ സ്വാധീനം നിങ്ങൾക്ക് അളക്കാനും അത് ആഗ്രഹിക്കുന്ന ഫലങ്ങൾ നൽകുന്നുണ്ടെന്ന് ഉറപ്പാക്കാനും കഴിയും. പ്രകടന മെച്ചപ്പെടുത്തലുകളുടെ ഒരു ആഗോള കാഴ്ചപ്പാട് ലഭിക്കുന്നതിന് വിവിധ ഭൂമിശാസ്ത്രപരമായ സ്ഥലങ്ങളിൽ നിന്ന് പരിശോധിക്കുന്നത് പരിഗണിക്കുക.
ഉപസംഹാരം: ഒരു ആഗോള പ്രേക്ഷകർക്കായി ഒപ്റ്റിമൈസ് ചെയ്യൽ
വെബ്സൈറ്റ് പ്രകടനം ഒപ്റ്റിമൈസ് ചെയ്യുന്നതിനും ആഗോള പ്രേക്ഷകർക്ക് തടസ്സമില്ലാത്ത ഉപയോക്തൃ അനുഭവം നൽകുന്നതിനും ടെയിൽവിൻഡ് സിഎസ്എസിന്റെ പർജ് പ്രവർത്തനം ഫലപ്രദമായി ഉപയോഗിക്കുന്നത് നിർണായകമാണ്. പർജ് ഓപ്ഷൻ ശ്രദ്ധാപൂർവ്വം കോൺഫിഗർ ചെയ്യുന്നതിലൂടെയും ആവശ്യമുള്ളപ്പോൾ `safelist` ഓപ്ഷൻ ഉപയോഗിക്കുന്നതിലൂടെയും നിങ്ങളുടെ പ്രൊഡക്ഷൻ സിഎസ്എസ് ഫയൽ പതിവായി പരിശോധിക്കുന്നതിലൂടെയും, ഉപയോക്താവിന്റെ സ്ഥാനമോ ഉപകരണമോ പരിഗണിക്കാതെ നിങ്ങളുടെ വെബ്സൈറ്റ് വേഗത്തിലും കാര്യക്ഷമമായും ലോഡുചെയ്യുന്നുവെന്ന് ഉറപ്പാക്കാൻ കഴിയും. ഇന്നത്തെ ലോകത്ത്, വേഗതയേറിയതും ഒപ്റ്റിമൈസ് ചെയ്തതുമായ വെബ്സൈറ്റുകൾ വിജയത്തിന് അത്യന്താപേക്ഷിതമാണ്. പ്രകടനത്തിന് മുൻഗണന നൽകുന്നതിലൂടെ, നിങ്ങൾക്ക് ഉപയോക്തൃ ഇടപഴകൽ മെച്ചപ്പെടുത്താനും പരിവർത്തന നിരക്കുകൾ വർദ്ധിപ്പിക്കാനും ആഗോള തലത്തിൽ നിങ്ങളുടെ ബിസിനസ്സ് ലക്ഷ്യങ്ങൾ കൈവരിക്കാനും കഴിയും. ഓരോ മില്ലിസെക്കൻഡും പ്രധാനമാണ്, മികച്ച വെബ്സൈറ്റ് പ്രകടനം കൈവരിക്കുന്നതിനുള്ള ഒരു അടിസ്ഥാന ഘട്ടമാണ് ശരിയായ സിഎസ്എസ് പർജിംഗ്.