Модуль не найден, требуется ('file.hbs') - PullRequest
0 голосов
/ 06 июня 2018

Я пытаюсь использовать руль в проекте, используя следующие сообщения:

https://n8d.at/blog/how-to-use-handlebars-in-sharepoint-framework-projects-spfx/ https://n8d.at/blog/first-handlebars-web-part-in-spfx/

в моем файле gulp.js, у меня есть этот код для расширенияWebpack

build.configureWebpack.mergeConfig({
   additionalConfiguration: (generatedConfiguration)=> {
         generatedConfiguration.module.rules.push( 
            { test: /\.hbs$/, loader: "handlebars-template-loader" } ); 
       return generatedConfiguration; 
    }
    }); 
 build.initialize(gulp); 

Я создал новый файл в папке config с именем copy-static.assets.json, с таким кодом внутри:

{"includeExtensions": ["hbs"]}

У меня есть шаблон на том же уровнекак файл .ts webpart, и я ссылаюсь на шаблон следующим образом:

var compiled = require('./test.hbs'); 

получаю эту ошибку при запуске gulp serve:

Module not found: Error: Can't resolve './test.hbs' using description file: C:\solutions\mywebpart\package.json . Field 'browser' doesn't contain a valid alias configuration.

Есть идеи, как решить эту проблему?

Примечание. Я использую Webpack 2.

1 Ответ

0 голосов
/ 06 июня 2018

Попробуйте вместо этого

const loaderRule = {
    "use": [{
    "loader": "handlebars-template-loader"
    }],
    "test": /\.hbs/
};

build.configureWebpack.mergeConfig({
    additionalConfiguration: (generatedConfiguration) => {
    generatedConfiguration.module.rules.push(loaderRule);

    return generatedConfiguration;}
});
...