早上好,抱歉耽误了您的时间,但这确实很重要。我试图上传我的应用程序“MEAN JS”,但在将其上传到 heroku 时出现错误。我将非常感谢您的贡献。非常感谢。
这是我项目的结构,你也可以看到heroku显示的错误:
这是我的节点 package.json:
{
"name": "Crabbit",
"version": "1.0.0",
"description": "",
"main": "index.js",
"engines": {
"node": "12.14.0"
},
"scripts": {
"start": "node index.js",
"dev": "nodemon server/index.js"
},
"keywords": [],
"author": "",
"license": "ISC",
"dependencies": {
"bcryptjs": "^2.4.3",
"body-parser": "^1.19.0",
"cors": "^2.8.5",
"express": "^4.17.1",
"fs-extra": "^9.0.1",
"jsonwebtoken": "^8.5.1",
"materialize-css": "^1.0.0-rc.2",
"moment": "^2.24.0",
"mongoose": "^5.6.8",
"mongoose-unique-validator": "^2.0.3",
"morgan": "^1.9.1",
"multer": "^1.4.2",
"uuid": "^3.4.0"
},
"devDependencies": {
"nodemon": "^1.19.1"
}
}
这是我来自angular的package.json:
{
"name": "front",
"version": "0.0.0",
"scripts": {
"ng": "ng",
"start": "ng serve",
"build": "ng build",
"test": "ng test",
"lint": "ng lint",
"e2e": "ng e2e"
},
"private": true,
"dependencies": {
"@angular/animations": "~8.2.0",
"@angular/cdk": "~8.1.2",
"@angular/common": "~8.2.0",
"@angular/compiler": "~8.2.0",
"@angular/core": "~8.2.0",
"@angular/forms": "~8.2.0",
"@angular/material": "^8.1.2",
"@angular/platform-browser": "~8.2.0",
"@angular/platform-browser-dynamic": "~8.2.0",
"@angular/router": "~8.2.0",
"@ngmodule/material-carousel": "^0.6.0",
"bootstrap": "^4.3.1",
"crypto-js": "^4.0.0",
"dateformat": "^3.0.3",
"hammerjs": "^2.0.8",
"materialize-css": "^1.0.0-rc.2",
"rxjs": "~6.4.0",
"tslib": "^1.10.0",
"zone.js": "~0.9.1"
},
"devDependencies": {
"@angular-devkit/build-angular": "~0.802.0",
"@angular/cli": "~8.2.0",
"@angular/compiler-cli": "~8.2.0",
"@angular/language-service": "~8.2.0",
"@types/node": "~8.9.4",
"@types/jasmine": "~3.3.8",
"@types/jasminewd2": "~2.0.3",
"codelyzer": "^5.0.0",
"jasmine-core": "~3.4.0",
"jasmine-spec-reporter": "~4.2.1",
"karma": "~4.1.0",
"karma-chrome-launcher": "~2.2.0",
"karma-coverage-istanbul-reporter": "~2.0.1",
"karma-jasmine": "~2.0.1",
"karma-jasmine-html-reporter": "^1.4.0",
"protractor": "~5.4.0",
"ts-node": "~7.0.0",
"tslint": "~5.15.0",
"typescript": "~3.5.3"
}
}
这是我的文件“index.js”的代码
const express=require('express');
const config=require('./config/config');
const app =config(express());
const morgan=require('morgan');
const cors=require('cors');
const multer = require('multer');
const uuid = require('uuid/v4');
const path = require('path');
app.set('views', path.join(__dirname, 'views'));
const storage = multer.diskStorage({
destination: path.join(__dirname, 'public/img/uploads'),
filename: (req, file, cb, filename) => {
cb(null, uuid() + path.extname(file.originalname));
}
})
app.use(multer({storage}).single('image'));
app.use(express.static(path.join(__dirname, 'public')));
//Iniciando el servidor
app.listen(app.get('port'),()=>{
console.log('Server on port',app.get('port'));
});
//Llamar a la base de datos
require('./database');
//Funciones
app.use(morgan('dev'));
app.use(express.json()); // Reconocer el formato JSON
app.use(cors({origin:'http://localhost:4200'}));