2017-04-06 139 views
1

我目前遇到一個奇怪的錯誤。我試圖使用json-loader的導入來加載json文件。Typescript React TS2307找不到模塊json

import * as ApiConfig from "../../src/conf.json"; 

我創建了一個typings.d.ts來定義css和json模塊。

declare module "*.json" { 
    const value: any; 
    export default value; 
} 


declare module "*.css" { 
    const content: any; 
    export default content; 
} 

當我沒有做我的typings.d.ts文件在我的WebStorm打開我有這樣的錯誤

Error:(1, 28) TS2307:Cannot find module '../../src/conf.json'. 

但是,當我把它打開,我沒有這個錯誤。

這裏是我的tsconfig.json

{ 
    "compilerOptions": { 
    "module": "commonjs", 
    "target": "es2015", 
    "jsx": "react", 
    "sourceMap": true, 
    "allowJs": true, 
    "experimentalDecorators": true 
    }, 
    "exclude": [ 
    "node_modules" 
    ] 
} 

這裏是我的裝載機在我webpack.config.js

loaders: [ 
      { 
       exclude: [ 
        /\.html$/, 
        /\.(js|jsx)$/, 
        /\.css$/, 
        /\.json$/, 
        /\.svg$/ 
       ], 
       loader: 'url-loader', 
       query: { 
        limit: 10000, 
        name: 'static/media/[name].[hash:8].[ext]' 
       } 
      }, 
      { 
       test: /\.js$/, 
       loader: 'babel-loader', 
       include: [ path.resolve(__dirname, '../') ], 
       exclude: [ path.resolve(__dirname, 'bundles') ], 
       query: { 
        presets: ['react', 'es2015'], 
        plugins: ['transform-decorators-legacy'], 
        cacheDirectory:true 
       }, 
       exclude: /(node_modules|bower_components)/ 
      }, 
      { 
       test: /\.css$/, 
       include: [ path.resolve(__dirname, '../') ], 
       exclude: [ path.resolve(__dirname, 'bundles') ], 
       loader: "style-loader!css-loader" 
      }, 
      { 
       test: /\.svg$/, 
       loader: "svg-loader" 
      }, 
      { 
       test: /\.json$/, 
       loader: "json-loader" 
      } 
     ] 

感謝

+0

'錯誤:(1,28)TS2307:找不到模塊'../../ src/conf.json'.'這意味着路徑錯誤 – niba

+0

我已經仔細檢查了我的路徑,它是正確的一。就像我說的,即使陌生人,該應用程序正在加載JSON。這只是在webstorm,我有這個錯誤。 –

回答

0

它實際上是在WebStorm一個bug,它有已在2017.1.1版中修復。

相關問題