我有一个使用ES6编写(使用Babel编译)的node.js库lib
,其中我导出了以下子模块:
"use strict";
import * as _config from './config';
import * as _db from './db';
import * as _storage from './storage';
export var config = _config;
export var db = _db;
export var storage = _storage;
如果我想在我的主项目中引入这个库,就像这样:import * as lib from 'lib';
console.log(lib);
我可以看到正确的输出并且它按预期工作{ config: ... }
。然而,如果我尝试像这样包含库:
import lib from 'lib';
console.log(lib);
它将是undefined
。
有人能解释一下这里发生了什么吗?这两种导入方法不应该是等效的吗?如果不是,我错过了什么区别?
import {…} as … from …
的语法。 - Bergi{…} as …
的语法,因此“与...相同”是无意义的。(我认为你的意思不是“产生与...相同的语法错误”) - Bergiimport {config, db, storage} as lib from 'lib';
是什么意思吗?它在任何地方都没有描述。 - Bergi