4

I have a html page and a serviceController.js, I need to automatically run the app through node js. Sorry for the naive question but am unable to run it. My serviceController.js looks like this :

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

I was following an example and I have tried the following: created a 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 starting the application from 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 guide!

5
  • Please check angular.js file is included and ng-app is set inside html page.CommentedApr 14, 2017 at 6:01
  • 1
    app.use("/", express.static(__dirname)); Use this in place of res.sendFile(path.join(__dirname+'/index.html'));CommentedApr 14, 2017 at 6:03
  • How are you adding your angular.js lib? by linking cdn your by bower?
    – abdulbari
    CommentedApr 14, 2017 at 6:04
  • @MuhammadUsman - you mean serviceController.js right? yes, i have included that and <body ng-app="app"> is set
    – kamini
    CommentedApr 14, 2017 at 6:05
  • @NiteshRana - Yes, adding the line you suggested worked. If you like, you can post it as an answer, and I will accept it. Thanks a lot!
    – kamini
    CommentedApr 14, 2017 at 6:09

2 Answers 2

3

app.use("/", express.static(__dirname)); Use this in place of

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

    1

    Update server file to serve a static directory like app.use(express.static('dirPath')) For more detail visit Serving static files in Express

      Start asking to get answers

      Find the answer to your question by asking.

      Ask question

      Explore related questions

      See similar questions with these tags.