2016-05-13 1 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, но я нас чтобы обрабатывать загрузчики и задавался вопросом, возможно ли что-то подобное?

ответ

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

Смежные вопросы