vite+react+ts

遇到的一些问题

最近在用vite写react项目,记录一下遇到的问题

配置别名后,在vscode中path有波浪线

  • npm install @types/node –save-dev

配置完成后,vscode中使用@还是有波浪线,但是项目没报错

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
{
"compilerOptions": {
"target": "ES2020",
"useDefineForClassFields": true,
"lib": ["ES2020", "DOM", "DOM.Iterable"],
"module": "ESNext",
"skipLibCheck": true,

/* Bundler mode */
"moduleResolution": "bundler",
"allowImportingTsExtensions": true,
"resolveJsonModule": true,
"isolatedModules": true,
"noEmit": true,
"jsx": "react-jsx",

/* Linting */
"strict": true,
"noUnusedLocals": true,
"noUnusedParameters": true,
"noFallthroughCasesInSwitch": true,
// 加这里=================================
"paths": {
"@/*": ["./src/*"],
}
},
"include": ["src"],
"references": [{ "path": "./tsconfig.node.json" }]
}

神奇的bug

将首字母改成大写就好了。

后端返回的res为underfined,但是网络面板里是成功的

后来发现是ts 类型的问题,他as 了一下就没了,主要还是前后端定义的格式有问题

1
2
3
4
5
6
7
8
9
10
11
export type ResType = {
code: number
data?: DataType
msg?: string,
msgs?:any,
users?:object,
}

export type DataType = {
[key: string]: any
}

上一行执行一个reducer,nav(-1),然后发现reducer不执行
后来我放回调里面了

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
const { run: readMsgRun, loading: readMsgLoading } = useRequest(
async (to) => {
const data = await readMsgService(to);
return {num:data,from:to};
},
{
manual: true,
onSuccess(res: any) {
console.log(res)
dispatch(msgReadReducer({ num:res.num, from: res.from }));
console.log({ num:res, userid: _id })
},
onFinally() {
nav(-1);
}
}

vite+react+ts
http://example.com/2023/08/04/vite+react+ts/
作者
shoukailiang
发布于
2023年8月4日
许可协议