Конфигурация веб-пакета для хамла - PullRequest
0 голосов
/ 11 сентября 2018

Итак, я только начал использовать веб-пакет для своих проектов.Я использую webpack, чтобы попытаться скомпилировать мои шаблоны haml в jsx, чтобы реагировать на элементы.Для этого я использую загрузчики haml-jsx и babel-loader.

Итак, проблема, с которой я сейчас сталкиваюсь, возникает, когда веб-пакет загружает шаблон .haml.Я продолжаю получать эту ошибку: «Ошибка синтаксического анализа модуля: неожиданный токен. Вам может понадобиться соответствующий загрузчик для обработки этого типа файлов».Я знаю, что мешает загрузчику haml-jsx работать правильно, но, как я уже сказал, я новичок в вебпаке, поэтому идите, если это мой конфигурационный файл вебпака или что-то вне этого.Вот почему я иду к вам, ребята!

Ниже приведен мой конфигурационный файл веб-пакета:

const path = require('path');
module.exports = {
    entry:path.resolve(__dirname,"index.js"),
    module:{
        rules:[
            {
                test:/\.haml$/,
                use:[
                    {
                        loader:"babel-loader",
                        options:{
                            presets: ['@babel/preset-env'],
                            plugins: [require('@babel/plugin-syntax-jsx')]
                        }
                    },
                    {
                        loader:"haml-jsx-loader"
                    }
                ]   
            },
        ]
    },
    output: {
        filename:"bundle.js",
        path: path.resolve(__dirname,"/distro")
    },
};

также моя структура каталогов выглядит следующим образом

webpack
-sass(dir)
-distro(dir)
-haml(dir)
  -tamplate.haml
-node_modules
-webpack.config.js
-babel.config.js
-index.js
-package.json

любые предложения помогут!Спасибо!

1 Ответ

0 голосов
/ 06 октября 2018

Проблема не имеет никакого отношения к самой haml .С загрузчиками все в порядке, за исключением того факта, что один из них не может проанализировать - и, следовательно, загрузить - данный файл.это ключ к вашей проблеме.@babel/plugin-syntax-jsx - это , а не , что вы ищете.Вы должны использовать @babel/plugin-transform-react-jsx.

Если честно, документация по всем плагинам babel на самом деле довольно плохая.

...