下面的导出语句存在语法错误。
export default const hello = () => console.log("say hello")
为什么?
我只能导出命名函数。
export function hello() {
console.log("hello")
}
原因是什么?
下面的导出语句存在语法错误。
export default const hello = () => console.log("say hello")
为什么?
我只能导出命名函数。
export function hello() {
console.log("hello")
}
原因是什么?
export
不关心你要导出的值是什么。以下导出语句为什么会出现语法错误?
你不能同时为一个默认导出定义一个名称("default"已经是导出的名称了)。
可以这样做:
export default () => console.log("say hello");
或者const hello = () => console.log("say hello");
export default hello;
x = y
是一个赋值表达式,其结果为 y
的值。它不是变量声明语句。你可以在任何可以放置表达式的地方使用 x = y
。请注意:如果 x
没有在之前定义,则在严格模式下会抛出错误。 - Felix Klingexport () => {/*body*/} as getUsers;
?还是必须先定义它,然后再导出? - Tomasz Mularczykexport const getUser = () => {...};
翻译为中文:@Tomasz:导出常量getUser=()=> {...};
- Felix Kling如果您不想使用默认导出,可以使用以下语法导出带有名称的函数:
export const yourFunctionName = () => console.log("say hello");
export function yourFunctionName () {
替换为 export const yourFunctionName = () =>
。字符长度相同,但在这个 = () =>
部分很容易出现拼写错误。老实说,对我来说它感觉不那么易读,而且需要更多的工作 :) - user670839this
值的方式上有所不同。https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Functions/Arrow_functions - Enekoconst
用于声明变量,就像 let
一样,但是你不能在之后更改它。在旧版 JS 中,它曾经是 var
。而 export
则使其在文件外可用。 - Raphael Pinellet
一起使用,但这很少用到。但是仅使用 export
而没有任何变量声明关键字(如 const
或 let
)是行不通的。 - Raphael Pinel试试这个
导出默认值 () => console.log("说你好");
或者
导出常量 hello = () => console.log("说你好")
export
完全不关心你想要导出的值。 - Felix Kling