export function add(x, y) {
return x + y;
}
export function subtract(x, y) {
return x - y;
}
import add from "./../utils/mathlib"; //not working. but if I do default export like `export default function add(x, y)` it will work
import { add } from "./../utils/mathlib"; //working
import * as MathLib from "./../utils/mathlib"; //working
但我想导入具有相同标识符的模块中的所有可用功能,而无需单独导入或通过导入对象。像下面的东西,
import * from "./../utils/mathlib"
我应该能够使用加,减函数。
这个用例背后的原因是,每当我在MathLib.js中添加新函数时,它都应该可以不用修改。(我把MathLib作为示例用例,在我的实际用例中,每当我导入时都需要所有函数模块)。
答案 0 :(得分:1)
您需要在默认对象中导出函数
export default {
add(x, y) {
return x + y;
}
subtract(x, y) {
return x - y;
}
}
答案 1 :(得分:1)
如果没有明确命名的导入/导出,您当前无法导入全局命名空间。它有助于防止全局命名空间污染和全局范围内的变量意外覆盖。