Перемещение целой папки с использованием брокколи JS в проекте Ember CLI

Я разрабатываю проект ember-cli, и я работаю над системой, которая позволяет мне разрешать шаблоны, которые не были загружены и могут жить вне структуры проекта.

Я хотел бы иметь папку в моем каталоге dist/assets с именем templates и внутри этой папки будут все предварительно скомпилированные шаблоны из app/templates/external. Это моя текущая попытка Brocfile.js с тушеной брокколи

var EmberApp = require('ember-cli/lib/broccoli/ember-app');
var stew = require("broccoli-stew");

var app = new EmberApp({
  vendorFiles: {
    "jquery.js": null
  },
  sassOptions: {
      includePaths: [
        'bower_components/bourbon/app/assets/stylesheets/',
        'bower_components/neat/app/assets/stylesheets/',
        'bower_components/bitters/app/assets/stylesheets/'
      ]
    }
});

var additionalTrees = [];

var templateFiles = stew.find(appTree, "assets/app/templates/external");
templateFiles = stew.mv(templateFiles, "assets/app/templates/external", "assets/templates");
additionalTrees.push(templateFiles);

module.exports = app.toTree(additionalTrees);

Ответ 1

Существует пакет npm, называемый broccoli-file-mover, прост в использовании и может быть найден здесь

Использование очень просто, так же просто, как:

moveFile (inputTree, options)

может использоваться для перемещения файлов (нескольких или одиночных) или целых папок

Пример:

Перенос одного файла из приложения /main в приложение:

var moveFile = require('broccoli-file-mover');

var tree = moveFile('app', {
  srcFile: 'app/main.js',
  destFile: '/app.js'
});

Перемещение приложения/основного приложения и тест /main для тестирования:

var moveFile = require('broccoli-file-mover');

var tree = moveFile('app', {
  files: {
    'app/main.js': 'app.js',
    'test/main.js': 'test.js'
  }
});

Кроме того,, перед комментарием благкома комментарий брокколи - это возможное решение, так как вы можете скопировать свой каталог туда, где хотите (подумал, что вопрос говорит о переходе, но мысль о копировании может быть приемлемым решением) здесь - это репо плагина.