问题一:我是使用webpack打包的为什么我的react模块放在node_modules中也只需要写成import React from 'react';就可以在另一个文件夹里引入react了?我并没有看到哪里设置了路径给react阿
问题2:我想问一下用webpack的时候使用import和export,是相当于使用ES6的呢?还是node里的内置对象呢?
欢迎选择我的课程,让我们一起见证您的进步~~
回答 1: import React from 'react'; を記述すると、webpack は resolve.alias に react が定義されているかどうかを優先して確認します。定義されていない場合は、node_modules で検索します。
import React from 'react';
resolve.alias
react
node_modules
回答 2: インポートとエクスポートはどちらも ES6 構文であり、組み込みオブジェクトではありません。webpack1 はこのインポート/エクスポート構文をサポートしていないため、require を作成するために Babel を使用する必要があります。
require
質問 1: これは、nodejs のモジュール読み込みメカニズムによって決まります。NODE に詳しくない場合は、公式ドキュメントを参照してください。 質問 2: ES6 と NODE の組み込みオブジェクトの間に競合はありません。Node は V8 プラットフォームに依存しているため、ES6 構文がサポートされているかどうかは V8 プラットフォームに依存しており、V8 は現在部分的に ES6 をサポートしています。 ただし、react はブラウザ側で実行する必要があるため、ブラウザの互換性を確保するために、通常、babel はそれを標準の ES5 構文に変換する必要があります。これは実際にはノード自体とは関係ありませんが、さまざまなノードと互換性を持たせるために必要です。ブラウザのバージョン。
回答 1:
import React from 'react';
を記述すると、webpack はresolve.alias
にreact
が定義されているかどうかを優先して確認します。定義されていない場合は、node_modules
で検索します。回答 2: インポートとエクスポートはどちらも ES6 構文であり、組み込みオブジェクトではありません。webpack1 はこのインポート/エクスポート構文をサポートしていないため、
require
を作成するために Babel を使用する必要があります。質問 1: これは、nodejs のモジュール読み込みメカニズムによって決まります。NODE に詳しくない場合は、公式ドキュメントを参照してください。
質問 2: ES6 と NODE の組み込みオブジェクトの間に競合はありません。Node は V8 プラットフォームに依存しているため、ES6 構文がサポートされているかどうかは V8 プラットフォームに依存しており、V8 は現在部分的に ES6 をサポートしています。
ただし、react はブラウザ側で実行する必要があるため、ブラウザの互換性を確保するために、通常、babel はそれを標準の ES5 構文に変換する必要があります。これは実際にはノード自体とは関係ありませんが、さまざまなノードと互換性を持たせるために必要です。ブラウザのバージョン。