Принсипи кори сборщики Webpack
Одатман, дар вақти барномасозӣ мо
бисёр файлҳои JavaScript дорем,
ки қисмҳои гуногуни кодро дар бар мегиранд.
Инҳо метавонанд қисмҳои коди мо бошанд,
ё китобхонаҳои ғайрирасмӣ.
Маълум мешавад, ки ҳар як чунин файлро
мо бояд ба файли HTML тавассути теги script пайваст кунем.
Ин хеле хуб нест, зеро бисёр файлҳои пайвастшуда суръати боргириро сайти сайтро суст мекунанд. Аз ин рӯ, барои зуд кардани боргирӣ лозим аст, ки тамоми кодро дар як файл гирд овард.
Аммо, дар як файли умумӣ кор кардан низ хеле қулай нест. Аз ин рӯ, дар вақти ҳозира равиши зерин амалӣ карда мешавад: код дар файлҳои ҷудогона барномасозӣ мешавад, ва сипас бо ёрии сборщик дар як файли умумӣ ҷамъ оварда мешавад, ки ба файли HTML пайваст карда мешавад.
Файлҳои ҷудогона намояндагӣ мекунанд
ES модулҳо.
Ин модулҳо ба файлҳои дигар тавассути
фармони import пайваст карда мешаванд.
Одатан як файли асосӣ эҷод мекунанд, ки файлҳои дигар ба он пайваст карда мешаванд. Ин файл номида мешавад нуқтаи дохилшавӣ.
Сборщик ба нуқтаи дохилшавӣ дохил мешавад, мебинад, ки кадом модулҳо пайваст карда шудаанд ба он. Ба ин модулҳо низ метавонанд модулҳои дигар пайваст карда шаванд. Сборщик ба ҳама пайвастҳо пайравӣ мекунад ва тамоми кодро дар як файл ҷамъ мекунад. Ин файл номида мешавад бандл.
Одатман, коде, ки барномасоз навиштааст,
дар ҷузвдони
src ҷойгир аст, ва коди ҷамъшуда гузошта мешавад
дар ҷузвдони dist.
Дар бораи он, ки бандл чист, нақл кунед.
Дар бораи он, ки нуқтаи дохилшавӣ чист, нақл кунед.
Дар бораи он, ки намудҳои гуногуни ҷамъ кардан мавҷуданд, нақл кунед.