Ich versuche, Mean.io für eine App zu nutzen, die ich erstelle, und ich habe im Wesentlichen nichts an den Originalkonfigurationsdateien geändert. Wenn ich diese App im Heroku-Produktionsmodus starte, werden die Dist-Dateien nicht korrekt aggregiert und es zeigt mir
"Fehler beim Laden der Ressource: Der Server hat mit dem Status 404 (Nicht gefunden) geantwortet http://\*\*\*\*.herokuapp.com/bower\_components/build/css/dist.min.css""
Gleiches gilt für die JS-Datei. Die entsprechenden Dateien sehen so aus: Assets.json: {
"core": {
"css": {
"bower_components/build/css/dist.min.css": [
"bower_components/met_theme/global/css/components.css"
]
},
"js": {
"bower_components/build/js/dist.min.js": [
"bower_components/angular/angular.js",
"bower_components/angular-mocks/angular-mocks.js",
"bower_components/angular-cookies/angular-cookies.js",
"bower_components/angular-resource/angular-resource.js",
"bower_components/angular-ui-router/release/angular-ui-router.js",
"bower_components/angular-bootstrap/ui-bootstrap.js",
"bower_components/angular-bootstrap/ui-bootstrap-tpls.js",
"bower_components/met_theme/global/scripts/datatable.js",
"bower_components/met_theme/global/scripts/metronic.js"
]
}
}
}
In meinem Gruntfile:
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
assets: grunt.file.readJSON('config/assets.json'),
// später
uglify: {
core: {
options: {
mangle: false
},
files: '<%= assets.core.js %>'
}
},
csslint: {
options: {
csslintrc: '.csslintrc'
},
src: paths.css
},
cssmin: {
core: {
files: '<%= assets.core.css %>'
}
},
Ich sehe, dass dies ein Fehler bei der Produktion gegenüber der Entwicklung ist, da mir, wenn ich das assetmanager-Objekt in meiner express.js-Datei auf Folgendes ändere:
var assets = assetmanager.process({
assets: require('./assets.json'),
debug: process.env.NODE_ENV !== 'development',
webroot: /public\/|packages\//g
});
Im Gegensatz zu !== 'production' zeigt es mir das gleiche Problem lokal. Ich bin nicht sehr vertraut mit dieser Art des Ladens von Dateien und ich kann keine Lösungen finden. Jeder, der eine Antwort geben kann oder mich in die richtige Richtung weisen kann, wäre sehr dankbar.
0 Stimmen
Hast du NODE_ENV in Heroku eingestellt?
heroku config:set NODE_ENV=production
0 Stimmen
Ja, wie ich sagte, liegt es an der Art und Weise, wie der Assetmanager die Distributionsdateien erstellt.
0 Stimmen
Ich habe das gleiche Problem, hast du eine Idee?? Danke
0 Stimmen
@EnriqueAparicio Leider habe ich nie eine Lösung für dieses Problem gefunden. Ich bin aus anderen Gründen mit dem Projekt weitergezogen, bevor ich es lösen konnte. Wenn Sie eine Lösung finden, veröffentlichen Sie diese bitte hier, da ich mir vorstellen kann, dass ich es irgendwann wieder begegnen werde.