استفاده از کامپوننت تابعی یا کلاسی یا هیچکدوم؟

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

سلام

 

یه زمانی ما نیاز داریم چند تا تابع برای کارهای مختلف داخل یه فایل بنویسیم و نیازه اونا رو جداگانه export کنیم این کار انگار داخل توابع کامپوننت امکان پذیر نیست و اگه بخواهیم این کد ها رو داخل کامپونتت کلاسی نویسیم میگن که تقریبا منسوخ شده 

بنظرتون اشکال داره مثل کد زیر این توابع رو بیرون از کامپونتت نوشت؟ 

اصلا موضوعی که بیان کردم درست؟

 

import axios from 'axios';
import React from 'react'

const getData = () => {
    return axios.get('http://localhost:3000/posts')
        .then(response => response.data)
        .then(data => console.log(data))
        .catch(error => console.log(error))
}

const postData = (data: any) => {
    return axios.post('http://localhost:3000/posts', data).then(response => response.data).then(data => data)
}

const putData = (data: any) => {
    return axios.put('http://localhost:3000/posts', data).then(response => response.data).then(data => data)
}

const deleteData = () => {
    return axios.delete('http://localhost:3000/posts').then(response => response.data).then(data => data)
}

export { getData, postData, putData, deleteData }
فایل پیوست

علیرضا بابایی
علیرضا بابایی

15 آبان 00

0
حذف شده

سلام

پروژه ما فقط از کامپوننت ها تشکیل نشده و ما میتونیم برای بخش های مختلف پروژه یکسری کد داشته باشیم که حالا اونها رو میشه اسم های مختلفی روشون گذاشت مثلا service

این موردی رو که گفتید و مثالی که گذاشتید خیلی رایج هست و اساسا بهتر که اون لاجیک مربوط که مستقیما جزئی از کامپوننت نیست رو از کامپوننت خارج بکنیم و منتقل بکنیم به یک فایل مجزا

 

نمونه همین موردی رو هم که اینجا گذاشتید چند باری در جاهای مختلف مشابه اون رو کدنویسی کردیم

فایل پیوست

مجتبی سوری

توسط

مجتبی سوری

16 آبان 00