Ashid Group
4 سال پیش توسط Ashid Group مطرح شد
4 پاسخ

delete کردن item از gridView در react native

سلام
من از لایبرری react-native-super-grid در کدم استفاده کردم .دیتا رو از سرور میگیرم و فیلد images که شامل یک jsonArray هست و مجموعه ی عکس ها داخلش هست به این صورت :
["images" : ["image1","image2","image3"
value ی این فیلد رو داخل یک state نگه میدارم و اون رو به gridView میدم و الان میخوام با کلیک روی یک آیتم اون رو حذف کنم که میتونه هرکدوم از آیتم ها باشه ، اگه میشه به من کمک کنید

و اگه راه حل دیگه ای برای حل این مشکل دارید (دریافت یکjsonArray شامل مجوعه ی عکس ها ک در یک گریدویو نمایش داده شود و با کلیک روی هر آیتم گرید ویو آن آیتم پاک شود و یک لیست از آیتم هایی دارم که حذف شده ها داخلش نیستن) ممنون میشم کمکم کنید


reactjs
تگ‌های محبوب
لاراول
php
laravel
متفرقه
reactjs
عمومی
html_css
nodejs
vuejs
وردپرس
پایتون
css
فلاتر
react
javascript
ثبت پرسش جدید
حسام موسوی
تخصص : طراح و برنامه نویس
@hesammousavi 4 سال پیش مطرح شد
1

خوب index ایتم مورد نظر داخل آرایه رو پیدا میکنید از ارایه پاکش میکنید و آپدیت میکنید state خودتونو.


Ashid Group
تخصص : برنامه نویس
@ashidgroup 4 سال پیش مطرح شد
0

بله این کار رو کردم ولی الان یه مشکل دیگه دارم
من توی تابع onPress تگ image به یه تابع اشاره کردم که اون index رو پاک کنه ولی به محض اینکه صفحه بالا میاد اون تابع اجرا میشه و همه ی آیتم ها پاک میشن در صورتی که باید اگه تگ image ، زده شد یا ب اصطلاح press شد اون تابع کار کنه !
<View style={{position: 'absolute'}} > <Image source={require('../../assets/image/close.png')} style={statisticsStyle.icon} onPress={this.deleteImages(index)} /> </View>

deleteImages(index){ this.state.images.splice(index); }


حسام موسوی
تخصص : طراح و برنامه نویس
@hesammousavi 4 سال پیش مطرح شد
1

لطفا کد ها رو در سه backtike در ابتدا و انتهای خودتون قرار بدید
فک کنم در پیاده سازی onPress مشکل دارید کد زیر رو قرار بدید

onPress={() => {
 this.deleteImages(index)
  }}

Ashid Group
تخصص : برنامه نویس
@ashidgroup 4 سال پیش مطرح شد
0

ممنون از وقتی که گذاشتید فقط لطف میکنید اگر استفاده از متد onPress و توابع این چنینی که بصورت
{() => ...}
هستند رو در آموزش ها بیشتر توضیح بدید چون مدل های متفاوتی دارند و آدم دچار سردرگمی میشه!

و برای دوستانی که میخونن این تاپیک رو باید بگم بجای تگ image از button استفاده کردم و مشکل حل شد.


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام