Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

require is not defined in angular

I am using angularjs where i have created a js file(loginCtrl.js) and i have inclused a controller. I have defined my db connection and schema in another file(server.js) and i want to include that file in my js.

My loginCtrl.js looks like:

test.controller('loginCtrl', function($scope, loginService){

   $scope.login = function(user)
   {
       console.log('inside function 1');
       var user = require('./server.js')
      console.log('inside function');
       loginService.login(user);
   }

});

and my server.js files looks like:

var express = require('express');
var mongoose = require('mongoose');

mongoose.connect('mongodb://localhost/userregistration');

var userSchema = {
    username: String,
    firstname:String,
    lastname: String,
    email: String,
    password: String
}

var User = mongoose.model('User', userSchema, 'user');

When i run the code, it gives the error like:

ReferenceError: require is not defined

It is printing the console.log defined above.

like image 537
kawade Avatar asked Mar 18 '23 09:03

kawade


1 Answers

require() is a NodeJS function, your angular controller will be executed in the browser, which doesn't have that built-in function. If you want to replicate that behavior client-side, you should look at RequireJS

like image 127
ploutch Avatar answered Apr 01 '23 18:04

ploutch