Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/392.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何从不同的js文件导入变量?_Javascript_Import_Export - Fatal编程技术网

Javascript 如何从不同的js文件导入变量?

Javascript 如何从不同的js文件导入变量?,javascript,import,export,Javascript,Import,Export,我一直在研究有关导入和导出的ES6文档。这很简单,但我无法让它工作。我只是尝试从js文件中导入简单变量,以便在函数中使用。我用了好几页的变量。我不想每次都硬编码。我如何做到这一点 config.js var app_mode = 0; if(app_mode ===0){ var mapboxtoken = 'pk.eytest'; }else{ var mapboxtoken = 'pk.eylive'; } function mapOverview(){ mapboxgl.accessT

我一直在研究有关导入和导出的ES6文档。这很简单,但我无法让它工作。我只是尝试从js文件中导入简单变量,以便在函数中使用。我用了好几页的变量。我不想每次都硬编码。我如何做到这一点

config.js

var app_mode = 0;
if(app_mode ===0){
var mapboxtoken = 'pk.eytest';
}else{
var mapboxtoken = 'pk.eylive';
}
function mapOverview(){

mapboxgl.accessToken = mapboxtoken;//use mapboxtoken variable here

//rest of code...
      
}
const app_mode = 0;
const  mapboxtoken =  (app_mode ===0) ? 'pk.eytest' : 'pk.eylive';
module.exports.mapboxtoken = mapboxtoken; 
const {mapboxtoken} = require('./config.js');
// or
const config = require('./config.js');

function mapOverview(){
  console.log(mapboxtoken);//use mapboxtoken variable here
  //or
  console.log(config.mapboxtoken);//use mapboxtoken variable here
}
mapOverview();
map.js

var app_mode = 0;
if(app_mode ===0){
var mapboxtoken = 'pk.eytest';
}else{
var mapboxtoken = 'pk.eylive';
}
function mapOverview(){

mapboxgl.accessToken = mapboxtoken;//use mapboxtoken variable here

//rest of code...
      
}
const app_mode = 0;
const  mapboxtoken =  (app_mode ===0) ? 'pk.eytest' : 'pk.eylive';
module.exports.mapboxtoken = mapboxtoken; 
const {mapboxtoken} = require('./config.js');
// or
const config = require('./config.js');

function mapOverview(){
  console.log(mapboxtoken);//use mapboxtoken variable here
  //or
  console.log(config.mapboxtoken);//use mapboxtoken variable here
}
mapOverview();

在配置文件中,您可能需要在末尾添加以下代码:

export mapboxtoken;
在映射文件中,按如下方式导入变量(假设两个文件位于同一目录中):


如果使用nodejs,可以从
模块导出。导出

config.js

var app_mode = 0;
if(app_mode ===0){
var mapboxtoken = 'pk.eytest';
}else{
var mapboxtoken = 'pk.eylive';
}
function mapOverview(){

mapboxgl.accessToken = mapboxtoken;//use mapboxtoken variable here

//rest of code...
      
}
const app_mode = 0;
const  mapboxtoken =  (app_mode ===0) ? 'pk.eytest' : 'pk.eylive';
module.exports.mapboxtoken = mapboxtoken; 
const {mapboxtoken} = require('./config.js');
// or
const config = require('./config.js');

function mapOverview(){
  console.log(mapboxtoken);//use mapboxtoken variable here
  //or
  console.log(config.mapboxtoken);//use mapboxtoken variable here
}
mapOverview();
map.js

var app_mode = 0;
if(app_mode ===0){
var mapboxtoken = 'pk.eytest';
}else{
var mapboxtoken = 'pk.eylive';
}
function mapOverview(){

mapboxgl.accessToken = mapboxtoken;//use mapboxtoken variable here

//rest of code...
      
}
const app_mode = 0;
const  mapboxtoken =  (app_mode ===0) ? 'pk.eytest' : 'pk.eylive';
module.exports.mapboxtoken = mapboxtoken; 
const {mapboxtoken} = require('./config.js');
// or
const config = require('./config.js');

function mapOverview(){
  console.log(mapboxtoken);//use mapboxtoken variable here
  //or
  console.log(config.mapboxtoken);//use mapboxtoken variable here
}
mapOverview();
输出:

pk.eytest
pk.eytest

也可以在这里阅读:

现在有两种主要的JavaScript模块解决方案

如果使用ES6,则使用
导出
导入

// A.js
export const SomeConst = 'blabla'

// B.js
import { SomeConst } from 'A.js'
console.log(SomeConst) // blabla
如果您使用Node.js,那么它就是commonjs,请使用
module.exports
require

// A.js
const SomeConst = 'blabla'
module.exports.SomeConst = SomeConst

// B.JS
const SomeConst = require('A.js).SomeConst

我可以在没有节点的情况下在浏览器中使用此节点吗?在浏览器中通常是“导入”,但您的项目是什么?我现在只是使用纯香草javascript和jquery的混合,没有什么特别之处。请阅读:您可以使用全局变量,如window.myVar=“value”,然后您可以在任何地方看到它