Mam dodatek, który musi skopiować zestaw plików JS z ich katalogu altówkowego do katalogu głównego Ember aplikacji z /dist
(jest to w celu określenia reguł związanych z pracownikami serwisu). Pomyślałem, że mógłbym użyć haka treeForApp
, ale gdy nie dostaję żadnych błędów, również nie uzyskuję pożądanego rezultatu.Dodatek Ember do dodawania plików do katalogu głównego
index.js
jest:
const Funnel = require('broccoli-funnel');
module.exports = {
name: 'ember-upup',
treeForApp: function(tree) {
tree = new Funnel(tree, { include:
[
'bower_components/upup/dist/upup.min.js',
'bower_components/upup/dist/upup.sw.min.js'
]});
return this._super.treeForApp.call(this, tree);
},
Uwaga: Myślałem, że mogę być w stanie rozwiązać ten problem, po prostu kopiowanie plików javascript w ramach
index.js
postBuild haka ale gdy to robi umieść pliki JS w katalogu głównym folderu dist, który nie jest obsługiwany przez ember-cli,ember serve
, widocznie, jeśli nie zostanie przepchnięty przez jedną z jego kompilowanych potoków.Stefan Penner zwrócił uwagę na to, że katalog
dist
jest przeznaczony dla programistów, ale serwowanie odbywa się w ramach struktury katalogówtmp
... to wyjaśnia, dlaczego mój "hack" nie zadziałał.
Czy próbowałeś zaimportować z domyślnym schematem 'this.addBowerPackageToProject ('upup.js')'? – Bek
@Bek 'addBowerPackageToProject' jest pierwszym krokiem do przeniesienia plików do katalogu bower_components. To, co muszę zrobić, to przenieść dwa pliki JS z początkowej lokalizacji do katalogu głównego kompilacji aplikacji (zwanego też folderem '/ dist'). Jest to ważne, ponieważ jeśli nie znajdują się w katalogu głównym dystrybucji, pracownik serwisu nie będzie miał możliwości interakcji ze wszystkimi zasobami stron. – ken
jeśli masz już 'addBowerPackageToProject', musisz zaimportować je w głównym' index.js' przez 'app.import()' w hook 'include', czy próbowałeś tego? jeśli nie, napiszę to jako odpowiedź? – Bek