[英]how can i shorten my imports as import xxx from “@dir/subdir/file” in react
[英]Shorten Imports in React
我決定縮短我在 React 應用程序中的導入。 所以我配置了jsconfig.json
。
我的問題是它在導入時出錯。
Failed to compile. ./src/actions/appActions.js
Module not found: Can't resolve '@constants'
請參閱下面的代碼。
回購協議
https://drive.google.com/drive/folders/1rp5AagwvMyBRbhb4svHUqyCYH3ROA-L3?usp=sharing
jsconfig.json
{
"compilerOptions": {
"baseUrl": ".",
"paths": {
"@components": ["src/components"],
"@actions": ["src/actions"],
"@constants": ["src/constants"],
"@constants/*": ["src/constants/*"],
"@services": ["src/services"],
"@assets": ["src/assets"]
}
}
}
appActions.js
import { appConstants } from '@constants';
export const setAPIErrorMessage = (error) => {
return {
type: appConstants.SET_API_ERROR_MESSAGE,
payload: error,
};
};
export const setAPISuccessMessage = (error) => {
return {
type: appConstants.SET_API_SUCCESS_MESSAGE,
payload: error,
};
};
常量 > index.js
export * from './authConstants';
export * from './appConstants';
常量 > appConstants.js
export const appConstants = {
SET_API_ERROR_MESSAGE: 'SET_API_ERROR_MESSAGE',
SET_API_SUCCESS_MESSAGE: 'SET_API_SUCCESS_MESSAGE',
};
你寫"@constants/*": ["src/constants/*"],
, but import from import appConstants from '@constants';
. 據我了解,匹配器在@constants
之后期望一些東西......
嘗試使用類似的東西
import { appConstants } from '@constants/appConstants';
或者將您的 jsconfig 文件編輯為類似
"@constants": ["src/constants"],
只需像這樣更新導入:
import { appConstants } from '@constants';
並在 config src/constants
添加一個路徑:
"@constants": ["src/constants"],
"@constants/*": ["src/constants/*"],
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.