2016-05-13 72 views
1

在我的組件我想包括數據的JSON文件,所以想有什麼辦法來導入文件/常數成JSON文件

import slides from './slides-data.json' 

和幻燈片,data.json看起來像

{ 
    "slides": [ 
    { img: "img.png", "text": "some text" }, 
    ... 
    ] 
} 

理想,雖然我想圖像導入json文件,像這樣

import MyImage from './assets/img.png' 
{ 
    "slides": [ 
    { img: "img.png", "text": "some text" }, 
    ... 
    ] 
} 

這不是一個有效的JSON,但我我們ing webpack來處理裝載機,並想知道這樣的事情是否可能?

回答

1

你可以寫自己的裝載機slides-data.json(只是舉例來說,未測試):

module.exports = function(source) { 
    this.cacheable(); 
    JSON.parse(source).slides.forEach(function(slide) { 
     this.addDependency(slide.img); // need to resolve this path before adding as dependency 
    }); 
    return source; 
}; 

和配置添加裝載機:

{test: /slides-data\.json$/, loader: "json-loader!your-custom-slides-loader"} 

您也可以使用自己的文件擴展名slides-data.json


但是首先請查看以下鏈接:

How to write a loader

Loaders API