在vscode 中代码提示的相关问题

新手上路,请多包涵

问题描述

index.js中编写如下代码


import {createStore} from 'redux';
import reducer from "./reducer";

//创建store时传入reducer

const store = createStore(reducer,window.__REDUX_DEVTOOLS_EXTENSION__ && window.__REDUX_DEVTOOLS_EXTENSION__());

export default store;

在另一个文件中导入并引用

import store from './store/index.js'

this.state = store.getState();

在使用store对象时,通过.操作符并不能主动的进行代码提示该对象下的方法

问题出现的平台版本及自己尝试过哪些方法,例如getState()或者dispatch()等

环境:vsoce 1.25.1

尝试解决方案,通过搜索了解到需要对该对象编写jsDoc进行描述
参考链接 优化Visual Studio Code的自动补全

但是通过F12转到定义时,发现该对象是一个接口类型

clipboard.png

那么如何对该接口类型进行JsDoc描述呢或者是否有其他办法解决此代码提示的问题

阅读 2.8k
1 个回答
新手上路,请多包涵

大家好,我是提问者,经过后面的调试我发现上面的问题可能不是代码提示的问题。
下面是我测试代码,发现createStore()的返回值并不是Store接口类型而是any类型的

图片描述

而在定义中是这样的
图片描述

我在后续的调用中使用了store.dispatch(action)的代码,

 //输入框变化时的处理
    handleInput(e){
        const action = {
            type:'change_input_value',
            value:e.target.value
        };

        //将action传递给store
        store.dispach(action);
    }

发生了以下异常

clipboard.png

clipboard.png

猜测应该是createStore()返回的store有问题。

有没有熟悉redux的高手帮忙解惑一下,万分感激

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题