آفلاین
user-avatar

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

3 سال پیش
توسط حسام موسوی آپدیت شد
آفلاین
user-avatar
احسان ( 256 تجربه )
3 سال پیش

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

آفلاین
user-avatar
حسام موسوی ( 374828 تجربه )
3 سال پیش
تخصص : طراح و برنامه نویس

خوب موضوع خاصی نیست شما در روتی که هستید اطلاعات رو وارد 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'))
آفلاین
user-avatar
احسان ( 256 تجربه )
3 سال پیش

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

آفلاین
user-avatar
حسام موسوی ( 374828 تجربه )
3 سال پیش
تخصص : طراح و برنامه نویس

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

event.preventDefault()

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

برای ارسال پاسخ باید وارد سایت شوید