Reactjs React/redux:我必须重新加载要删除的页面
所以这是一件很难解决的事情。我遇到的问题是,当我删除某些内容时,我必须刷新页面。有人告诉我,我可能没有正确更新状态,并且状态是通过redux控制的 这是我的减速机中的删除操作Reactjs React/redux:我必须重新加载要删除的页面,reactjs,react-redux,Reactjs,React Redux,所以这是一件很难解决的事情。我遇到的问题是,当我删除某些内容时,我必须刷新页面。有人告诉我,我可能没有正确更新状态,并且状态是通过redux控制的 这是我的减速机中的删除操作 case 'Delete_Recipe': const recipes = state.recipes.filter(recipe => recipe.id !== action.id) return {...state, recipes}
case 'Delete_Recipe':
const recipes = state.recipes.filter(recipe => recipe.id !== action.id)
return {...state, recipes}
这是我的删除操作
export const deleteRecipe = (recipeId) =>{
const BASE_URL = `http://localhost:10524`
const RECIPES_URL =`${BASE_URL}/recipes`
return (dispatch) => {
fetch(`${RECIPES_URL}/${recipeId}`,{method: 'DELETE'})
.then(response =>{ return response.json()})
.then(recipeId => { return dispatch({ type: 'Delete_Recipe', recipeId })});
};
}
我想这就是你所需要的,如果你还需要什么,请告诉我。但是我还可以做些什么来删除我可以不刷新页面的地方。从您的代码中,这一行
const recipes=state.recipes.filter(recipe=>recipe.id!==action.id)
应该是:
const recipes=state.recipes.filter(recipe=>recipe.id!==action.recipeId)
这不起作用:-(@Stitch是否recipe.id
和action.recipeId
具有相同的类型?这一直是我难以确认的。我在itI上有调试器,我认为它们不是相同的类型,然后将它们转换为相同的类型…@Stitch