Index.js中的语法错误

时间:2016-05-10 16:52:19

标签: angularjs node.js postgresql express web-application-project

'use strict';

var path = require('path');
var _ = require('lodash');

function requiredProcessEnv(name) {
if (!process.env[name]) {
throw new Error('You must set the ' + name + ' environment variable');
}
return process.env[name];
}

// All configurations will extend these options
// ============================================
var all = {
env: process.env.NODE_ENV,

// Root path of server
root: path.normalize(__dirname + '/../../..'),

// Server port
port: process.env.PORT || 9000,

// Server IP
ip: process.env.IP || '0.0.0.0',

// Should we populate the DB with sample data?
seedDB: false,

// Secret for session, you will want to change this and make it an  environment variable
secrets: {
session: process.env.session || "wav"
},
// Export the config object based on the NODE_ENV
// ==============================================
module.exports = _.merge(
all,
require('./shared'),
require('./' + process.env.NODE_ENV + '.js') || {})};

使用我的项目运行时(使用angular-fullstack创建的Web应用程序),我收到以下错误:

Line 39 col 6 Unexpected token: module.exports
                                        ^
line 39  col 7   Expected ':' and instead saw '.'.
  line 42  col 54  Expected '}' to match '{' from line 15 and instead saw ';'.

此外,这里的代码也给我的项目带来了一些其他问题。我最后几行更改为:

var config = _.merge(...); 
  console.log(config); 
  module.exports = config;`
And I still get a syntax error: ` line 39  col 7   Expected ':' and instead saw 'config'.
  line 39  col 14  Expected an identifier and instead saw '='.
  line 39  col 16  Expected '}' to match '{' from line 15 and instead saw '_'.
  line 39  col 27  Expected an identifier and instead saw ')'.
  line 39  col 27  Expected an identifier and instead saw ')'.
  line 39  col 28  Expected ')' and instead saw ';'.
  line 40  col 15  'config' is not defined.
  line 41  col 20  'config' is not defined.

2 个答案:

答案 0 :(得分:0)

请学会正确缩进代码。然后你的错误应该清楚地找到。

Coding Style Guide for node.js apps?

https://github.com/felixge/node-style-guide

答案 1 :(得分:0)

'module.export'在'all'对象里面,将它移到外面应该可以工作:

'use strict';

var path = require('path');
var _ = require('lodash');

function requiredProcessEnv(name) {
    if (!process.env[name]) {
        throw new Error('You must set the ' + name + ' environment variable');
    }
    return process.env[name];
}

// All configurations will extend these options
// ============================================
var all = {
    env: process.env.NODE_ENV,

// Root path of server
    root: path.normalize(__dirname + '/../../..'),

// Server port
    port: process.env.PORT || 9000,

// Server IP
    ip: process.env.IP || '0.0.0.0',

// Should we populate the DB with sample data?
    seedDB: false,

// Secret for session, you will want to change this and make it an  environment variable
    secrets: {
        session: process.env.session || "wav"
    }
};

// Export the config object based on the NODE_ENV
// ==============================================
module.exports = _.merge(
    all,
    require('./shared'),
    require('./' + process.env.NODE_ENV + '.js') || {}
);