如何在我的 auth.tsx 文件上使用 typescript 文件

Posted

技术标签:

【中文标题】如何在我的 auth.tsx 文件上使用 typescript 文件【英文标题】:How can i use typescript file on my auth.tsx file 【发布时间】:2021-12-15 11:01:22 【问题描述】:

我的问题会有点简单,但我是打字稿的新手,所以我在编码时遇到了麻烦。

我有一个表单结构,这个表单在后端使用 jwt 令牌。当然,我必须向这个 API 发出请求,所以我在一个操作文件下创建了一个名为 auth.tsx 的文件并编写了必要的代码,但由于我的系统上有打字稿,我在某些数据类型中遇到了任何错误。

以下是我遇到错误的数据类型和变量示例

export const reset_password_confirm = (uid, token, new_password, re_new_password) => async dispatch => 
    const config = 
        headers: 
            'Content-Type': 'application/json'
        
    ;

    const body = JSON.stringify( uid, token, new_password, re_new_password );

    try 
        await axios.post(`$process.env.REACT_APP_API_URL/auth/users/reset_password_confirm/`, body, config);

        dispatch(
            type: PASSWORD_RESET_CONFIRM_SUCCESS
        );
     catch (err) 
        dispatch(
            type: PASSWORD_RESET_CONFIRM_FAIL
        );
    
;

然后我得到这个错误:

The 'new_password' parameter has an implicit type 'any'.

我在下面列出的变量中也遇到了这个错误。

uid, token, email, new_password, password, dispatch. 

我如何在这个文件中使用打字稿 任何人都可以帮忙吗?谢谢

【问题讨论】:

【参考方案1】:

在打字稿中,函数参数需要类型。这会强制将什么样的东西传递给函数,并让您知道如何在函数内部使用该东西。

例如:

import  DispatchOrSomething  from 'redux-or-whatever-lib'

export const reset_password_confirm = (
  uid: number,
  token: string,
  new_password: string,
  re_new_password: string
) => async (dispatch: DispatchOrSomething) => 
  //...

For example, look at this playground

【讨论】:

以上是关于如何在我的 auth.tsx 文件上使用 typescript 文件的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 apache2 在我的 Linux 网络服务器上设置音频文件的 CORS 访问权限?

如何让 IIS 在我的网站上正确提供 .webmanifest 文件?

如何在我的聊天应用程序上向我的其他好友发送文件?

PHP 7 - 不支持声明'strict_types'

如何在我的Django模板上删除“未设置密码”以编辑配置文件

如何在我的网络服务器上不断运行我的时间敏感文件删除脚本