检查使用导入的Express.js应用程序

问题描述 投票:2回答:2

我有一个应用程序,在index.js中包含以下内容:

import express from 'express';
import data from './data/data.json';

const app = express();
const PORT = 3000;

我如何访问data变量用于测试目的?

在SO(This answer)上给出的node -i -e "$(< index.js)"返回以下错误:

import express from 'express';
        ^^^^^^^

SyntaxError: Unexpected identifier

我在Node 10.8和Express 4.16.3上。

在Rails中,您将获得一个交互式控制台(通过运行rails console),您可以在其中“玩”环境(db等)。

node.js express node-modules
2个回答
2
投票

这是因为导入语句稍后会被编译器/浏览器识别。 您可以使用babel作为转换器https://babeljs.io/或试试这个

var express = require('express');
var data = require('./data/data.json');

const app = express();
const PORT = 3000;

编辑


Make your package.json file look like this (install packages and change script by adding babel-node)
    {.....
      "scripts": {
      ....
      "start": "babel-node Server.js"
      ...  
   },
"devDependencies": {
    "babel-cli": "^6.8.0",
    "babel-core": "6.8.0",
    "babel-loader": "6.2.4",
    "babel-preset-es2015": "6.6.0",
    "babel-preset-react": "6.5.0",
    "babel-preset-react-hmre": "1.1.1",
     .....}


create .babelrc file in root directory on project (where node_modules of project are)
{
"presets": ["react","es2015"],
"env": {
    "development": {
                                    "presets": [
                                                            "react-hmre"
                                                            ]
                                }
                }
}  

并运行

npm start

0
投票
const express = require('express');
const data = require('./data/data.json');

const app = express();
const PORT = 3000;

我认为这应该有效。

© www.soinside.com 2019 - 2024. All rights reserved.