قراره بهتون تضمین موفقیت در برنامه‌نویسی و کلی آفر ویژه بدیم 😎 (برای شروع کلیک کن 👉)
۰ ثانیه
۰ دقیقه
۰ ساعت
۵ milad karimi
تداخل استفاده از پکیج‌ها
جامعه Html & CSS ایجاد شده در ۲۷ فروردین ۱۴۰۲

باسلام

بنده به یک مشکل جدی برخوردم در خصوص ااستفاده از پکیج‌ها در در یک فایل gulpfile.js بدین صورت که به طور مثال پکیج imagemin برای استفاده از آن باید حتما آن را import کرد و نمیشه که اون رو require کرد و از طرفی پکیج node-sass که برای کامپایل فایل‌ها sass مورد استفاده قرار میگیرد و باید حتما require کرد و نمیشه که آن را import کرد بدین ترتیب نمیشه از این دو پکیج ضروری در یک فایل استفاده کرد ...

راه حل چیه لطفا توضیح بدید ...

سلام،

اجباری در استفاده یک روش وجود نداره، هر دورو میتونید به یک روش استفاده کنید، بصورت دستی میتونید type رو یکی کنید.

روش دیگر استفاده از پکیج gulp-load-plugins که بصورت خودکار پلاگین هارا اضافه میکند.

const gulp = require('gulp');
const plugins = require('gulp-load-plugins')();

بصورت Lazy Load خواهد بود. وقتی plugins.name() را صدا میزنید پلاگین مورد نظر لود میشود:

plugins.imagemin()
plugins.sass()
محسن موحد ۲۸ فروردین ۱۴۰۲، ۱۹:۲۱

متوجه نشدم ...

اوکی نظرتون راجع به استفاده از webpack چیه بهتر نیست که برم و اونو یاد بگیر م ؟؟

milad karimi ۲۹ فروردین ۱۴۰۲، ۰۶:۴۶

چه قسمتیو متوجه نشدید تا توضیح بدم؟

محسن موحد ۲۹ فروردین ۱۴۰۲، ۲۰:۴۱

من حقیقت روش ادد کردن پکیج هارو و نحوه استفاده هم کمی متفاوته چون استاد ی جور گفتن و توی داکیومنت‌ها به صورت دیگر اعمال شده و به نظر میرسه که تداخل داشته باشه با روش استاد ...

milad karimi ۲۹ فروردین ۱۴۰۲، ۲۰:۴۶

ساده‌ترین راه اینه از پلاگین‌های خود gulp در کنار هم استفاده کنید.

منظورم اینه بجای node-sass از پلاگین gulp-sass در کنار gulp-imagemin استفاده کنید تا درگیر موضوعات دیگر نشوید.

پکیج gulp-sass رو اگر نگاه بندازید(داخل فولدر نصبی و فایل package.json اش) میبینید node-sass رو بعنوان dependency در خودش داره.

پس با توجه به توضیحات این صفحه، با کامند زیر نصبش کنید:

npm install sass gulp-sass --save-dev

ونمونه کدی از نوع استفاده:

import gulp from 'gulp';
// imagemin
import imagemin from 'gulp-imagemin';
// sass
import dartSass from 'sass';
import gulpSass from 'gulp-sass';
const sass = gulpSass(dartSass);
gulp.task('images', () => {
  return gulp.src('src/images/*')
    .pipe(imagemin())
    .pipe(gulp.dest('dist/images'))
});
gulp.task('sass', () => {
  return gulp.src('src/styles/*.scss')
    .pipe(sass())
    .pipe(gulp.dest('dist/css'))
});
محسن موحد ۳۰ فروردین ۱۴۰۲، ۰۱:۴۸