npm i -g yarnnpm i -g gulpnpm i -g bem-tools-coregit clone https://github.com/andreyalexeich/gulp-pug-starter.gitcd gulp-pug-starteryarn set version berryyarnyarn run dev (وضع التطوير)yarn run build (وضع التجميع)إذا فعلت كل شيء بشكل صحيح ، فيجب عليك فتح متصفح مع خادم محلي. يتضمن وضع التجميع تحسين المشروع: ضغط الصورة ، وصنع ملفات CSS و JS للتنزيل على الخادم.
gulp-pug-starter
├── dist
├── gulp-tasks
├── src
│ ├── blocks
│ ├── fonts
│ ├── img
│ ├── js
│ ├── styles
│ ├── views
│ └── .htaccess
├── gulpfile.babel.js
├── webpack.config.js
├── package.json
├── .yarnrc.yml
├── .babelrc.js
├── .bemrc.js
├── .eslintrc.json
├── .stylelintrc
├── .stylelintignore
└── .gitignore
.babelrc.js - إعدادات بابل.bemrc.js - إعدادات BEM.eslintrc.json - إعدادات ESLINT.gitignore - حظر على تتبع ملفات GIT.stylelintrc - إعدادات Stylelint.stylelintignore - حظر على تتبع ملفات Stylelint.yarnrc.yml - وضع الغزلgulpfile.babel.js - إعدادات Gulpwebpack.config.js - إعدادات WebPackpackage.json - قائمة التبعياتsrc - المستخدم أثناء التطوير:src/blockssrc/fontssrc/imgsrc/jssrc/views/pagessrc/stylessrc/viewssrc/.htaccessdist هو مجلد يتم إطلاق خادم محلي من أجله للتطوير (عند بدء تشغيل yarn run dev )gulp-tasks مجلد مع مهام Gulp yarn run lint:styles - تحقق من ملفات SCSS. بالنسبة إلى VSCode ، تحتاج إلى تثبيت مكون إضافي. بالنسبة إلى WebStorm أو PhpStorm ، تحتاج إلى تمكين Stylelint Languages & Frameworks - Style Sheets - Stylelint (سيتم إصلاح الأخطاء تلقائيًا أثناء حفظ الملف)yarn run dev - بدء تشغيل خادم لتطوير المشروعyarn run build - اجمع مشروعًا مع التحسين دون بدء تشغيل الخادمyarn run build:views - تجميع ملفات الصلصالyarn run build:styles - تجميع ملفات SCSSyarn run build:scripts - جمع JS فشلyarn run build:images - جمع الصورyarn run build:webp - لضبط الصور على تنسيق .webpyarn run build:sprites - جمع البراعمyarn run build:fonts - جمع الخطوطyarn run build:favicons - جمع Favikonkiyarn run build:gzip - جمع تكوين Apacheyarn run bem-m -add Bem Blockyarn run bem-c - أضف المكونyarn run lint:styles --fix -fix Errors في ملفات SCSS وفقًا لإعدادات Stylelintyarn run lint:scripts - تحقق من JS FAILyarn run lint:scripts --fix -fix Errors في ملفات JS وفقًا لإعدادات ESLINT src/blocks/modulessrc/views/index.pug (أو إلى ملف الصفحة اللازم حيث سيتم استدعاء الكتلة)src/blocks/modules/_modules.scsssrc/js/import/modules.jsمثال على بنية المجلد مع كتلة BEM:
blocks
├── modules
│ ├── header
│ │ ├── header.pug
│ │ ├── header.js
│ │ ├── header.scss
من أجل عدم إنشاء المجلد والملفات المقابل يدويًا ، يكفي وصف الأوامر التالية في وحدة التحكم:
yarn run bem-m my-block لإنشاء كتلة BEM في src/block/modules (للكتل الرئيسية BEM) ، حيث تكون my-block هي اسم كتلة BEM (بعد الإنشاء تحتاج إلى حذف محتويات ملف BAM BLOCK JS) ؛yarn run bem-с my-component لإنشاء مكون في src/blocks/components (للمكونات) ، حيث يكون my-component هو اسم المكون (بعد إنشاء ، تحتاج إلى حذف محتويات ملف JS Component Component) ؛src/blocks/componentssrc/views/index.pug (أو إلى ملف الصفحة اللازم من حيث سيتم استدعاء المكون)src/blocks/components/_components.scsssrc/js/import/components.jssrc/views/pagessrc/views/layouts/default.pug قالبsrc/views/index.pugsrc/fonts.woff تنسيقات و .woff2src/styles/base/_fonts.scsssrc/img.webp . معلومات مفصلة عن الاستخدام هناsrc/img/favicon ويبلغ حجمها على الأقل 1024px x 1024px لإنشاء العفاريت .svg يجب أن تكون صورة .svg في مجلد src/img/sprites . على سبيل المثال ، لدينا ملفات icon-1.svg و icon-2.svg و icon-3.svg ، ويجب علينا الاتصال icon-2.svg . للقيام بذلك ، في HTML ، تحتاج إلى استخدام علامة use :
svg
use ( xlink:href = "img/sprites/sprite.svg#logo" )قم بتغيير أنماط SVG-icons من العفريت في CSS:
svg use {
fill : red;
}هناك موقف عندما لا يمكن تغيير أنماط الرموز. ويرجع ذلك إلى حقيقة أنه عند التصدير من Figma إلى SVG ، تتم إضافة رمز إضافي. على سبيل المثال:
< svg width =" 18 " height =" 19 " viewBox =" 0 0 18 19 " fill =" none " xmlns =" http://www.w3.org/2000/svg " >
< path d =" M4.90918 4.04542L13.091 9.54088L4.90918 14.9545L4.90918 4.04542Z " fill =" #1B1B1D " />
</ svg > من الضروري إزالة fill="none" و fill="#1B1B1D" . يجب أن يتحول هكذا:
< svg width =" 18 " height =" 19 " viewBox =" 0 0 18 19 " xmlns =" http://www.w3.org/2000/svg " >
< path d =" M4.90918 4.04542L13.091 9.54088L4.90918 14.9545L4.90918 4.04542Z " />
</ svg > node_modulesyarn add package_name import $ from "jquery" ;src/styles/vendor/_libs.scssاستخدم هذا التجميع.
أخبرني عن الحشرات ، وضعت نجمة ، كن Telegram Ton بالنسبة لي للبيرة؟
لجميع الأسئلة ، اكتب في Telegram