index.js
import { ApolloServer } from 'apollo-server-express'
import express from 'express'
global.myTest = true
/models/user.js
import Sequelize from 'sequelize'
console.log('test:' + global.myTest)
任何人都知道如何使用Apollo Server Express设置全局变量吗?上面的示例返回undefined。
答案 0 :(得分:0)
由于es6 import
模块被吊起。在运行任何代码之前,将加载所有从属模块。定义和分配global.myTest
后,您需要确保访问它。将值分配给require
后,可以使用nodejs global.myTest
关键字要求用户模型。
例如
index.js
:
import { ApolloServer } from 'apollo-server-express';
import express from 'express';
global.myTest = true;
require('./models/user');
./models/user.js
:
console.log('test:' + global.myTest);
控制台的输出:
$ npx ts-node ./index.js
test:true