@beefront17

Как настроить абсолютный путь в typescript/webpack?

Добрый день! Помогите пожалуйста понять почему данный конфиг не видит абсолютный путь?
Как вообще в typeScript проекте правильно настроить абсолютные пути? Без typeScript-а все работает ок.
Проект на react/redux/typescript только настраиваю.
ипорт где ошибка
import {SOME_URL} from 'src/constants';

Вебпак видает ошибку
Module not found: Error: Can't resolve 'src/constants'


Хотя webstorm ничего не подствечивает и все находит.
 
webpack.js
const HtmlWebpackPlugin = require('html-webpack-plugin');
const path = require('path');

module.exports = {
  mode: 'development',
  context: path.resolve(__dirname, `./src`),
  entry: ['@babel/polyfill', './index.tsx'],
  output: {
    path: path.resolve(__dirname, 'dist'),
    filename: 'bundle.[hash].js'
  },
  resolve: {
    extensions: ['.js', '.jsx', '.ts', '.tsx'],
    alias: {
      'src': path.resolve(__dirname, './src'),
    }

  },
  module: {
    rules: [
      {
        test: /\.(ts|tsx)$/,
        include: [
          path.resolve(__dirname, 'src'),
        ],
        exclude: /node_modules/,
        use: 'ts-loader',
      },
      {
        test: /\.(js|jsx)$/,
        include: [
          path.resolve(__dirname, 'src'),
        ],
        exclude: /node_modules/,
        use: 'source-map-loader',
        enforce: 'pre'
      },
    ]
  },
  plugins: [
    new HtmlWebpackPlugin({
      template: '../public/index.html',
      favicon: '../public/favicon.ico'
    }),
  ],
  devtool: 'inline-source-map',
  devServer: {
    host: 'localhost',
    port: 8080,
    open: true,
    historyApiFallback: true,
    hot: true,
    inline: true
  }
};


tsconfig.js

{
    "compilerOptions": {
        "sourceMap": true,
        "target": "es5",
        "jsx": "react",
        "module": "es6",
        "moduleResolution": "node",
        "experimentalDecorators": true,
        "declaration": false,
        "removeComments": true,
        "noImplicitReturns": true,
        "noUnusedLocals": true,
        "strict": true,
        "outDir": "build",
        "lib": ["es6", "es7", "dom"],
        "baseUrl": "app"
    },
    "exclude": ["build", "node_modules"]
}


Буду очень благодарен за помощь!
  • Вопрос задан
  • 1148 просмотров
Пригласить эксперта
Ответы на вопрос 1
Aetae
@Aetae Куратор тега JavaScript
Тлен
В попробуй compilerOptions добавить что-то типа:
"paths": {
  "src/*": [ "app/src/*" ]
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы