Деревья:{ mergetrees(['src', внешний файл js])} в ember-cli-build.js не работает

В приложении glimmer я хочу связать внешний файл Js с файлом app.js. Я хочу использовать SVG в приложении Glimmer. Вместо ember-inline-svg я использовал пакеты broccoli-flatiron и broccoli-merge-trees для объединения внешнего js-файла с app.js.

Мой код в ember-cli-build.js

const GlimmerApp      = require('@glimmer/application-pipeline').GlimmerApp;
const merge           = require('merge');
const fs              = require('fs');
const Funnel          = require('broccoli-funnel');
const flatiron        = require('broccoli-flatiron');
const mergeTree       = require('broccoli-merge-trees');

module.exports = function(defaults) {
 var options=merge(true, {}, {
   paths:   ['src/ui/styles/svgs']
 });

 var svgs = mergeTree(options.paths.filter(function(path) {
   return fs.existsSync(path);
 }));

 svgs = new Funnel(svgs, {
   include: [new RegExp(/\.svg$/)]
 });

 svgs = flatiron(svgs, {
   outputFile: 'svgs.js',
   trimExtensions: true,
   variableName : "const svgs = "
 });

 let app = new GlimmerApp(defaults, {

   trees:{
     src:mergeTree(['src',svgs])
   }


   });

 return app.toTree();

};

Но выдает ошибку "Не удалось определить тип модуля svgs"...

Я хочу связать SVG с app.js.

1 ответ

Попробуйте вместо этого объединить деревья так:

…

module.exports = function(defaults) {
  …

  let app = new GlimmerApp(defaults, { 
  });

  return mergeTree([app.toTree(), svgs]);
};
Другие вопросы по тегам