Если кто-то сталкивался с той же проблемой, попробуйте код ниже (я использую: сборник рассказов, реагирование - без создания приложения реагирования, машинопись):
Первый вопрос касался машинописи, и вот что сработало для меня:создал файл custom.d.ts в корневой папке и поместил этот код внутри:
declare module "*.svg" {
const content: string;
export default content;
}
declare module "svg-inline-react"
Затем я добавляю этот файл в tsconfig.json следующим образом:
"files": [
"./custom.d.ts"
],
После этого ошибка- «не удалось найти imageName.svg» исчез, но svg-inline-реагировать по-прежнему не показывал значок, теперь проблема была внутри файла «webpack.config.js», исправленный код написан ниже.
const path = require('path');
module.exports = ({ config }) => {
config.module.rules = config.module.rules.map( data => {
// This overrides default svg rouls of storybook, and after that we can use
//svg-inline-loader.
if (/svg\|/.test( String( data.test ) ))
data.test = /\.(ico|jpg|jpeg|png|gif|eot|otf|webp|ttf|woff|woff2|cur|ani)
(\?.*)?$/;
return data;
});
config.module.rules.push({
test: /\.scss$/,
use: ['style-loader', 'css-loader', 'sass-loader'],
});
config.module.rules.push({
test: /\.(ts|tsx)$/,
use: [
{
loader: require.resolve('awesome-typescript-loader'),
},
],
});
config.module.rules.push({
test: /\.svg$/,
include: path.resolve(__dirname, '../'),
loader: 'svg-inline-loader'
});
config.resolve.extensions.push('.ts', '.tsx')
return config;
};
^ _ ^