似乎没有对应的文件夹或文件名为'react'。也许使用npm启动给JSX文件访问'react',我不知道'react'在哪里。基本上,“react”在哪里?我查看了node_modules文件夹,有一个名为react的子文件夹,但是没有名为React的文件。从“React”导入React;在上面的代码行中,我找不到React的位置,我试着在'react'文件夹中查找,它是node_modules的子文件夹
0h4hbjxa1#
React从React package导出。
React
import React from 'react';
在上面的行中,您正在导入一个默认导出。您可以给予它任何您想要的名称,而不是React。在React源代码中,您可以找到package.json中定义的默认导出。
ebdffaop2#
单词React是您将'react'库导出为默认值的位置。如果你打开node_modules/react/package.json文件并检查它,你会发现以下代码行:
node_modules/react/package.json
... "main": "index.js", "exports": { ".": { "react-server": "./react.shared-subset.js", "default": "./index.js" // <----------------------------- see here }, "./package.json": "./package.json", "./jsx-runtime": "./jsx-runtime.js", "./jsx-dev-runtime": "./jsx-dev-runtime.js" },
package.json说入口点是index.js,所以如果你检查index.js的内容,(exports["."][“default”]说使用index.js进行默认导入(即import DefaultReact from 'react'))
index.js
import DefaultReact from 'react'
'use strict'; if (process.env.NODE_ENV === 'production') { module.exports = require('./cjs/react.production.min.js'); } else { module.exports = require('./cjs/react.development.js'); }
这不仅仅是一个React特定的事情,你可以学习如何从here创建自定义包。
2条答案
按热度按时间0h4hbjxa1#
React
从React package导出。在上面的行中,您正在导入一个默认导出。您可以给予它任何您想要的名称,而不是
React
。在
React
源代码中,您可以找到package.json中定义的默认导出。ebdffaop2#
单词
React
是您将'react'库导出为默认值的位置。如果你打开
node_modules/react/package.json
文件并检查它,你会发现以下代码行:package.json说入口点是
index.js
,所以如果你检查index.js
的内容,(exports["."][“default”]说使用index.js
进行默认导入(即import DefaultReact from 'react'
))这不仅仅是一个React特定的事情,你可以学习如何从here创建自定义包。