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

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

لینک کوتاه اشتراک گذاری

0

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

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

لینک کوتاه اشتراک گذاری

1

خوب موضوع خاصی نیست شما در روتی که هستید اطلاعات رو وارد 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
احسان ( 286 تجربه )
4 سال پیش

لینک کوتاه اشتراک گذاری

0

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

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

لینک کوتاه اشتراک گذاری

1

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

event.preventDefault()

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

برای ارسال پاسخ لازم است، ابتدا وارد سایت شوید.