attributes اسپرید شده

پرسیده شده
فعالیت 1303 روز پیش
دیده شده 401 بار
0

استاد اینجا که میخواهیم ست اتربیوت کنیم،این اتربیوتس ایی که اسپرید میکنیم( attributes...)،این چیه؟
شما یک اینترفیس تعریف میکنین و تو ست اتربیوت میارین.اما تو UI دیده نمیشه.آن چیزی که دیده میشه کامپوننت اتربیوته.من دقیقا نفهمیدم این اینترفیس اتربیوت ایتم رو برای چی تعریف میکنیم و چرا پراپرتیهاشو تو ست اتربیوت میاریم.در حالیکه اصلا وقتی دگه زده میشه کامپوننت اتربیوته که لود میشه.اگر هم این روش، شیوه آپدیت استیت با قوانین ایمیوتبل است به هر حال وقتی دگمه رو میزنیم خود اتربیوت لود میشه و درست هم هست چون تو مپ در نهایت این کامپوننت اتربیوته که رندر میشه و ربطی با اون پراپرتیها نداره.

const addNewAttribute=(e:ReactMouseEvent)=>{
    e.preventDefault()
    setAttributes((prev)=>{
        return[
            ...attributes,
            {title:'',
            slug:'',
            type:1,
            filterable:true,
            hasprice:false
            }
        ]
    })
}

 

فایل پیوست

سینا-همتی
سینا-همتی

12 مهر 99

0
حذف شده

سلام خدمت شما. احتمالا من این رو اشتباه نوشتم چون قصدم این بوده از prev استفاده کنم تا حالت immutable رو حفظ کنیم. نوشتن interface کمک میکنه داده هایی که رد و بدل می کنیم بر اساس استانداردهای از قبل تعیین شده انجام بشه و نمیذاره توسعه دهنده بر خلاف اونها کاری انجام بده و علاوه بر اینها در auto complete هم کمک می کنه.

فایل پیوست

کیوان علی محمدی

توسط

کیوان علی محمدی

12 مهر 99

حذف شده
استاد یک پاسخ من برای خودم نوشتم میشه خواهش کنم نگاه کنید.ممنون.فکر میکنم چنین چیزی باید باشه.
سینا-همتی

12 مهر 99

0
حذف شده

( attributes...) همان کامپوننت اتربیوت هایی هستند که به شکل داینامیک قرار است در map وارد شوند.(آپدیت ست اتربیوت به روش ایمیوتبل).پراپرتیهایی را هم که برای اینترفیس تعریف کردیم مقادیر درون باکس های آن کامپوننت-اتربیوت هستند که بعد از پراپس پذیرکردن کامپوننت-اتربیوت میتوانیم به عنوان پراپس به آن پاس داده و در نهایت آنرا ذخیره کنیم.

فایل پیوست

سینا-همتی

توسط

سینا-همتی

12 مهر 99

جلسه اضافه کردن Attribute توسط State