Javascript 我无法正确创建别名

Javascript 我无法正确创建别名,javascript,reactjs,Javascript,Reactjs,我想在我的react项目(CRA 3.1.1)中创建别名,但我无法实现它。我试过几种方法,但都不管用。在一些博客之后,我只设法将简单的“src”文件夹命名为别名。就我试图从那里继续下去而言,这是行不通的 我的文件夹结构如下: { "compilerOptions": { "target": "es2018", "checkJs": true, "baseUrl": "src" }, "include" : ["src" , "src/components"], "exclude"

我想在我的react项目(CRA 3.1.1)中创建别名,但我无法实现它。我试过几种方法,但都不管用。在一些博客之后,我只设法将简单的“src”文件夹命名为别名。就我试图从那里继续下去而言,这是行不通的

我的文件夹结构如下:

{
  "compilerOptions": {
  "target": "es2018",
  "checkJs": true,
  "baseUrl": "src"
},
"include" : ["src" , "src/components"],
"exclude": ["node_modules", "**/node_modules/*"]
}
  • client/index.js
  • 客户端/src/components
  • client/src/components/App/App.js
在我的index.js中,我想做:

import App from "App/App.js";
我的jsconfig.json如下所示:

{
  "compilerOptions": {
  "target": "es2018",
  "checkJs": true,
  "baseUrl": "src"
},
"include" : ["src" , "src/components"],
"exclude": ["node_modules", "**/node_modules/*"]
}

在您的网页包配置中,在您的
解析
对象定义
别名
中。例如,如果您想使用
App
而不是提供完整路径
client/src/components/App
,您可以编写如下内容:

...
resolve: {
  ...
  alias: {
    'App': 'client/src/components/App'
  }
  ...
}
...

如果看不到网页配置,您可能需要在CRA应用程序上运行
warn eject

在您的网页配置中,在您的
resolve
对象定义
alias
中。例如,如果您想使用
App
而不是提供完整路径
client/src/components/App
,您可以编写如下内容:

...
resolve: {
  ...
  alias: {
    'App': 'client/src/components/App'
  }
  ...
}
...

如果看不到webpack配置,您可能需要在CRA应用程序上运行
Thread eject

您收到了什么错误消息?您是否在webpack.config.js中添加了别名?您使用的是哪个模块绑定器?网页包?包裹?我正在使用webpack,但无法更改配置,因为我尚未弹出我的应用程序。错误消息类似于“找不到模块:无法解析”App/App.js“您收到了什么错误消息?您是否在webpack.config.js中添加了别名?您使用的是哪个模块绑定器?webpack?packet?我正在使用webpack,但我无法更改配置,因为我没有弹出我的应用程序。错误消息类似于”未找到模块:无法解析“App/App.js”谢谢!我忘了提那件事;我还没有退出我的申请。没有弹出就没有办法做到这一点?我见过几种方法,但没有一种有效:(@JavierGuzman,我认为这是不可能的。但是除了弹出CRA,还有其他方法。你可以在这里阅读。谢谢!我忘了提到这一点;我没有弹出我的应用程序。没有弹出就没有办法做到这一点。我见过几种方法,但没有一种有效:(@JavierGuzman,我认为这是不可能的。但是除了弹出CRA,还有其他选择。你可以在这里阅读