راکت

نحوه redirect کردن به یک router دیگه توسط react-router-redux

3 پاسخ

سلام .
من میخوام موقعی که یک action انجام میشه و دیتا از api گرفته میشه . اطلاعات این دیتا رو در یک آدرس دیگری از روتر render کنم .
و ذهنیتی از اینکه این مورد باید در action باشد و یا در reducer باشد ندارم . ممنونم میشم از دوستان که راهنماییم کنن .

احسان
احسان
@ehsan0fahamy
ثبت پرسش جدید

پاسخ‌ها

3
حسام موسوی
حسام موسوی
@hesammousavi

تخصص: طراح و برنامه نویس

خوب موضوع خاصی نیست شما در روتی که هستید اطلاعات رو وارد state های redux میکنید و بعد از اتمام اینکار به روتی که میخواد میرید چون اطلاعات در redux تغییر پیدا میکنه به هر روتی که بره همون اطلاعات تغییر پیدا کرده نمایش داده میشه .
البته مثالی هم زده خود react-router-redux

import { createStore, combineReducers, applyMiddleware } from 'redux';
import { routerMiddleware, push } from 'react-router-redux'

// Apply the middleware to the store
const middleware = routerMiddleware(browserHistory)
const store = createStore(
  reducers,
  applyMiddleware(middleware)
)

// Dispatch from anywhere like normal.
store.dispatch(push('/foo'))
احسان
احسان
@ehsan0fahamy

حسام جان ممنونم از راهنمایی .
من خب داخل اکشن خودم دو dispatch رو صدا زدم که یک مورد آن دایرکت میشه . ولی خب مشکل اینجاست که دگمه ای که کلیک میشه داخل یک تگ فرم هستش که از onSubmit در اون استفاده شده و دگمه هم از تایپ submit استفاده شده . و در نتیجه وقتی که دایرکت میشه وارنینگی نمایش داده میشه :
Form submission canceled because the form is not connected
که سرچی هم داخل گوگل داشتم که میگه تایپ دگمه رو button بزارید .. خب اگر من این کار رو انجام بدم خیلی از فانکنش هام هم باید تغییر کند و عملا تگ فرم من هم بلااستفاده میمونه . راه حلی هست آیا ؟

شاید پاسخ شما همین‌جا باشد

حسام موسوی
حسام موسوی
@hesammousavi

تخصص: طراح و برنامه نویس

اها یعنی نمیخواین به هیچ صفحه ای بره زمانی که روی submit
اگر منظورتون اینه میتونید از

event.preventDefault()

استفاده کنید که نمیزاره submit اجرا بشه و به هیچ جای نمیره .

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

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