مشکل عجیب در کار نکردن تابع filter

حل شده 

JavaScript

توسط shaya در 10 ماه پیش
2 12k 1 10 ماه پیش
shaya reza-irdev
1

سلام دوستان عزیز

من در ادامه مسیر یادگیری ریکت هستم از صبحه درگیر یه مشکلم نمیدونم ایراد از کجاست. مشکل اینه که من یه Store برای پست ها دارم میخوام تو ACTION مثلا یکی از پست ها رو حذف کنم تا کامپوننت آپدیت بشه! الان مشکل اینه که هر کاری میکنم تابع filter مقدار خالی برمیگردونه و برنامه خطا میده . من واسه اینکه راحت بشه کار اومدم کد اصلی رو گذاشتم جالب اینه که همینم کار نمیکنه!!!

 var state = {
  "posts": [
    {
      "_id": "61",
      "title": "hello",
      "body": "body",
    },
     {
      "_id": "63",
      "title": "hello 2",
      "body": "body",
    }
  ]
}

var ret = state.posts.filter(post => {
  post._id !== "63"
});

console.log(ret);

میشه بگیدمشکل کار از کجاست؟

پاسخ ها

1

سلام، فکر میکنم تا الان دیگه مشکل کد رو پیدا کردین احتمالا این Arrow Function گمراهتون کرده. اگه کد دقیقا همینه مشکل اینه که شما داخل فیلتر هیچ چیزی Return نکردید!

var ret = state.posts.filter(post => {
  return post._id !== "63" // works
});

یا میتونین اینطوری بنویسید

var ret = state.posts.filter(post =>  post._id !== "63" );
شایان 10 ماه پیش

خوش آمدید

برای طرح سوال، ایجاد بحث و فعالیت در سایت نیاز است ابتدا وارد حساب کاربری خود شوید. در صورتی که هنوز عضو سایت نیستید میتوانید در عرض تنها چند ثانیه ثبت نام کنید.

لطفا ابتدا لاگین کنید