Javascript Redux Devtool(chrome扩展)未显示状态
我是Redux新手,Redux开发工具更新 我制作了一个简单的应用程序,你点击一个用户,它会显示一些关于他的数据 因此,基本上在状态中,我有当前选定的用户 但我不知道为什么redux devtool中的状态一直是空的。(不在应用程序中) 这里是我创建店铺的地方:Javascript Redux Devtool(chrome扩展)未显示状态,javascript,reactjs,redux,redux-devtools-extension,Javascript,Reactjs,Redux,Redux Devtools Extension,我是Redux新手,Redux开发工具更新 我制作了一个简单的应用程序,你点击一个用户,它会显示一些关于他的数据 因此,基本上在状态中,我有当前选定的用户 但我不知道为什么redux devtool中的状态一直是空的。(不在应用程序中) 这里是我创建店铺的地方: import React from 'react'; import ReactDOM from 'react-dom'; import { Provider } from 'react-redux'; import { createSt
import React from 'react';
import ReactDOM from 'react-dom';
import { Provider } from 'react-redux';
import { createStore, applyMiddleware } from 'redux';
import App from './components/app';
import reducers from './reducers';
const createStoreWithMiddleware = applyMiddleware()(createStore);
ReactDOM.render(
<Provider store={createStoreWithMiddleware(reducers)}>
<App />
</Provider>
, document.querySelector('.container'));
}
这是一个减速器:
import {USER_SELECTED} from '../actions/index'
export default function (state = null,action){
switch(action.type){
case USER_SELECTED :
return action.payload
}
return state
}
最后是行动呼吁:
export const USER_SELECTED = 'USER_SELECTED'
export function selectUser(user){
return {
type : USER_SELECTED,
payload : user
}
this.props.selectUser(user)
这个应用程序运行得很好,但我可能遗漏了一些东西
谢谢你的帮助 如果已经使用中间件设置了存储,请尝试以下操作
import { createStore, applyMiddleware, compose } from 'redux';
const composeEnhancers = window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ || compose;
const store = createStore(reducer, /* preloadedState, */ composeEnhancers(
applyMiddleware(...middleware)
));
你把这一行添加到你的商店了吗
window.__REDUX_DEVTOOLS_EXTENSION__ && window.__REDUX_DEVTOOLS_EXTENSION__()
我在看几年前我是如何做到这一点的,这将起到关键作用:
const store = createStore(reducers,
window.devToolsExtension && window.devToolsExtension()
)
对于从事旧项目/教程的潜在redux新手,请了解
window.devToolsExtension已被弃用,取而代之的是
window.REDUX\u DEVTOOLS\u扩展`,并将在下一版本的REDUX DEVTOOLS中删除:
如前所述,替换为
window.\uuuu REDUX\u DEVTOOLS\u EXTENSION\uuu&&window.\uuuu REDUX\u DEVTOOLS\u EXTENSION\uu()
我尝试了所有方法,但REDUX仍然没有显示在开发工具中,
所以我尝试了这个chrome扩展。安装此扩展插件后也要重新加载
它像一个符咒一样发挥作用
还有档案,
store.js
App.js
从'react redux'导入{Provider};//导入提供程序和存储
从“./store”//使用存储导入存储
ReactDOM.render(
,
document.getElementById('root'))
);
您是否将这一行添加到您的商店<代码>窗口.\uuuuRedux\uDevTools\uuuuuuuuuuuuu扩展和窗口.\uuuuRedux\uDevTools\uuuuuuuuu扩展()就是这样!谢谢,真的!!!别担心。很高兴我能帮忙。我将把它作为一个答案发布给你,请接受:)这个视频解释了如何将redux devtool连接到基本的react redux应用程序-
import { createStore, applyMiddleware } from "redux"; // importing redux,redux-thunk(for my own use) and redux-devtools-extension
import thunk from 'redux-thunk';
import { composeWithDevTools } from 'redux-devtools-extension';
const initialState = {}; // declaring the variable with empty state
const composeEnhancers = composeWithDevTools({});
const store = createStore( // creating the store
finalReducer,
initialState,
composeEnhancers(applyMiddleware(thunk)) // you can leave this as it is if no middleware
);
import { Provider } from 'react-redux'; // importing the provider and store
import store from './store' // using store
ReactDOM.render(
<Provider store={store}>
<App />
</Provider>,
document.getElementById('root')
);