Javascript 为什么导入{Thing}工作,但不导入Thing?

Javascript 为什么导入{Thing}工作,但不导入Thing?,javascript,react-router,Javascript,React Router,我正在看一些关于Pluralsight的训练视频,所以我一定会把它捡起来。但我也在做有偿工作(凭借10年的Rails经验)。这是在React中出现的,其中来自React-router dom的导入链接仅用作来自React-router dom的导入{Link}。另外,我喜欢马上检查。对不起:)这是命名导入和默认导入之间的区别: import { Link } from 'react-router-dom'; // import the export named Link import Link

我正在看一些关于Pluralsight的训练视频,所以我一定会把它捡起来。但我也在做有偿工作(凭借10年的Rails经验)。这是在React中出现的,其中来自React-router dom的
导入链接
仅用作来自React-router dom的
导入{Link}。另外,我喜欢马上检查。对不起:)

这是命名导入和默认导入之间的区别:

import { Link } from 'react-router-dom'; // import the export named Link
import Link from 'react-router-dom'; // import the default export
再进一步说明一下,如果您查看一下,您将看到有许多命名导出,但没有默认导出。如果存在默认情况,则:

import Link from 'react-router-dom';

将导入该默认导出并将其命名为
Link

,因为在react router dom中,默认情况下不会导出任何内容,在import语句中,如果要导入特定的函数或类,则必须使用{}我们要导入的大括号和通行证名称,如果我们要导入文件默认导出的名称,那么我们使用import AnyName。非常感谢您链接到实际的源代码。