Running angular app using node js

I have an html page and serviceController.js, I need to automatically launch the application through node js. Sorry for the naive question, but I can't run it. My ServiceController.js is as follows:

var app = angular.module("app", []); app.controller('serviceController', ['$scope', '$interval','$http', function($scope, $interval, $http) { $scope.service1 = {//and so on.. } 

I followed the example and I tried the following: created package.json:

 { "name": "express-html", "version": "0.0.1", "dependencies": { "express": "^4.11.0" }} 

My server.js looks like this:

 var express = require("express"); var app = express(); var path = require("path"); app.get('/',function(req,res){ res.sendFile(path.join(__dirname+'/index.html')); }); app.listen(3000); console.log("Running at Port 3000"); 

But, when I try to run the application from the terminal using: node server.js. I get the following error:

 (function (exports, require, module, __filename, __dirname) { var app = angular.module("app", []); ^ReferenceError: angular is not defined at Object.<anonymous> (/Users/dem/Desktop/frontend/task3/serviceController.js:1:81) at Module._compile (module.js:570:32) at Object.Module._extensions..js (module.js:579:10) at Module.load (module.js:487:32) at tryModuleLoad (module.js:446:12) at Function.Module._load (module.js:438:3) at Module.require (module.js:497:17) at require (internal/module.js:20:19) at Object.<anonymous> (/Users/dem/Desktop/frontend/task3/server.js:5:19) at Module._compile (module.js:570:32) 

Please, help!

+5
source share
2 answers

app.use ("/", express.static (__ dirname)); Use this instead

res.sendFile (path.join (__ directory_name + '/index.html'));

+2
source

Update the server file to serve a static directory, for example app.use(express.static('dirPath')) For more information, visit Serving Static Files in Express

+1
source

Source: https://habr.com/ru/post/1266725/


All Articles