CommonJS http://www.commonjs.org/は、モジュラーjavascriptコンポーネントのセットを作成するための取り組みであると時々耳にしますが、率直に言って、私はそれについて何も理解していません。
これらのモジュラーコンポーネントはどこで使用できますか?彼らのホームページにはあまり見かけません。
CommonJS http://www.commonjs.org/は、モジュラーjavascriptコンポーネントのセットを作成するための取り組みであると時々耳にしますが、率直に言って、私はそれについて何も理解していません。
これらのモジュラーコンポーネントはどこで使用できますか?彼らのホームページにはあまり見かけません。
CommonJSは、JavaScriptをモジュール化する方法を指定する標準にすぎないため、CommonJS自体はJavaScriptライブラリを提供しません。
CommonJSはrequire()
、モジュールをインポートして使用できるようにする関数を指定します。モジュールには、exports
エクスポートされるものを保持するオブジェクトであるという名前の特別なグローバル変数があります。
// foo.js ---------------- Example Foo module
function Foo() {
this.bla = function() {
console.log('Hello World');
}
}
exports.foo = Foo;
// myawesomeprogram.js ----------------------
var foo = require('./foo'); // './' will require the module relative
// in this case foo.js is in the same directory as this .js file
var test = new foo.Foo();
test.bla(); // logs 'Hello World'
Node.js標準ライブラリとすべてのサードパーティライブラリは、CommonJSを使用してコードをモジュール化します。
もう1つの例:
// require the http module from the standard library
var http = require('http'); // no './' will look up the require paths to find the module
var express = require('express'); // require the express.js framework (needs to be installed)
アイデアは、(私はこれに気づいていませんでしたが)、単なるWebブラウザ以上のものにjavascriptを提供することであるようです。たとえば、CouchDBはクエリ用のJavaScriptをサポートしています。
CommonJSはモジュールではなく、2つのJavaScriptモジュールが相互に通信する方法を定義する単なる仕様です。この仕様では、exports変数とrequire関数を使用して、モジュールが相互に公開および消費する方法を定義します。
CommonJS仕様を実装するために、CommonJS仕様に準拠した多くのオープンソースJSフレームワークがあります。JSローダーの例としては、systemJS、Webpack、RequireJSなどがあります。以下は、CommonJSを説明する簡単なビデオであり、systemJSが一般的なjs仕様を実装する方法も示しています。
一般的なJSビデオ:-https://www.youtube.com/watch?v = jN4IM5tp1SE