بىلىملەر مۇنبىرى

 پارول قايتۇرىۋېلىش
 تىزىملىتىڭ
جەمئىي مىكروبلوگ 258 تال  

مىكروبلوگ[ يېڭى | 24 سائەت | 7 كۈن | 30 كۈن ]

كۆرۈش: 616|ئىنكاس: 0

[Node.js] Node.js مودۇل سىستېمىسى

[ئۇلانما كۆچۈرۈش]

بىكەتكە ئەزا نامىڭىز بىلەن كىرسىڭىز تېخىمۇ كۆپ ئۇچۇرلارنى كۆرەلەيسىز

مۇنبىرىمىزگە تىزىملىتىپ كىرسىڭىز ئاندىن قوشۇمچە ھۆججەتنى كۆرەلەيسىز ياكى چۈشۈرەلەيسىز . تېخى تىزىملاتمىغانمۇ؟ تىزىملىتىڭ

x
Node.js نىڭ ھۆججەتلىرىنى ئۆز ئارا ئىشلىتىش ئۈچۈن، Node.js بىر ئاددى بولغان مودۇل سېستىمىسى تەمىنلىگەن.
مودۇل بولسا Node.js پروگراممىسىنىڭ ئاساسىي تەركىبى قىسمى بولۇپ، ھۆججەت بىلەن مودۇل ئۆز ئارا مەس كەلگەن. باشقىچە قىلىپ ئېيتقاندا، بىر Node.js ھۆججەت بىر مودۇل بولىدۇ، بۇ ھۆججەت بەلكىم JavaScript كودى، JSON ياكى تەرجىمە قىلىنىپ بولۇنغان C/C++ قىستۇرمىسى بولىشى مۇمكىن.

مودۇل ئىشلىتىش
Node.js دا، مودۇل ئىشلىتىش ناھايىتى ئاسان بولۇپ، تۆۋەندە بىز **main.js** ھۆججەتتىن بىرنى قۇرۇپ hello مودۇلنى ئىشلىتىپ كۆرۈپ باقايلى:
  1. var hello = require('./hello');
  2. hello.world();
مەزمۇننى كۆچۈرۈۋېلىش

يوقارقى مىسالدا require('./hello') كودى نۆۋەتتىكى مۇندەرىجىدىكى hello.js ھۆججىتىنى ئىشلەتتى (./ بولسا نۆۋەتتىكى مۇندەرىجىنى كۆرسىتىدۇ، node.js نىڭ سۈكۈتتىكى كېڭەيتىلگەن نامى js بولىدۇ).
Node.js يەنە exports بىلەن  require ئىككى ئوبيېكتنى تەمىنلىگەن بولۇپ، بۇنىڭ ئىچىدە exports بولسا مودۇل ئاشكارا ئۇلىنىش ئېغىزى، require بولسا سىرىتتىن بىر مودۇلنىڭ ئېغىزىغا ئېرىشىش ئۈچۈن ئىشلىتىلىدۇ.
نۆۋەتتە بىز hello. js ھۆججىتىنى بىرنى قۇرايلى:
  1. exports.world = function() {
  2.   console.log('Hello World');
  3. }
مەزمۇننى كۆچۈرۈۋېلىش

يۇقىرىقى مىسالدا، hello.js exports ئوبيېكت ئارقىلىق world نى مودۇلنىڭ زىيارەت قىلىش ئېغىزى قىلىپ، main.js دا require (/ hello) ئارقىلىق بۇ مودۇلنى يۈكلىدى، ئاندىن بىۋاستە hello.js دىكى exports ئوبىكتىنىڭ ئەزا فۇنكىسىيەسىنى قوبۇل قىلغىلى بولىدۇ.
بەزىدە بىز ئوبيېكتنى مودۇلغا پىچەتلەپ(封装) بىرىمىز، مەسلەن تۆۋەندىكىدەك:
  1. module.exports = function() {
  2.   // ...
  3. }
مەزمۇننى كۆچۈرۈۋېلىش

مىسال:
  1. //hello.js
  2. function Hello() {
  3.     var name;
  4.     this.setName = function(thyName) {
  5.         name = thyName;
  6.     };
  7.     this.sayHello = function() {
  8.         console.log('Hello ' + name);
  9.     };
  10. };
  11. module.exports = Hello;
مەزمۇننى كۆچۈرۈۋېلىش

بۇنداق بولغاندا ئوبيېكتقا بىۋاسىتە ئېرىشكىلى بولىدۇ:
  1. //main.js
  2. var Hello = require('./hello');
  3. hello = new Hello();
  4. hello.setName('BYVoid');
  5. hello.sayHello();
مەزمۇننى كۆچۈرۈۋېلىش

مودۇل ئېغىزىنىڭ بىردىنبىر ئۆزگىرىشى بولسا، module.exports = Hello كودى exports.world = function(){} ئورنىنى ئالدى. سىرتىدا مودۇل ئىشلەتكەندە، ئۇنىڭ ئۇلىنىش ئېغىزى ئوبيېكتى ئەسلىدىكى exports ئەمەس، بەلكى Hello نى چىقىرىدىغان ئوبيېكتنىڭ ئۆزى بولىدۇ. ئېغىز ئوبيېكتى Hello ئوبيېكتنىڭ ئۆزىنى چىقىرىدۇ. 

مۇلازىمەت تەرەپتىكى مودۇلنى قەيەرگە قويىمىز؟
بەلكىم سىز دىققەت قىلغان بولۇشىڭىز مۇمكىن، بىز كود ئىچىدە مودۇلنى ئىشلىتىپ بولدۇق. مەسلەن تۆۋەندىكىدەك:
  1. var http = require("http");
  2. ...
  3. http.createServer(...);
مەزمۇننى كۆچۈرۈۋېلىش

Node.js ئىچىدە http دەپ مودۇل بار بولۇپ، بىز كودىمىزدا ئۇنى ئىلتىماس قىلىمىز ھەمدە قايتۇرغان قىممەتنى يەرلىك ئۆزگەرگۈچى مىقدارغا بېرىمىز.
شۇنداق قىلىپ يەرلىكتىكى ئۆزگەرگۈچى مىقدار http مودۇلنىڭ باھارلىق ئورتاق فونكىسىيەلىرىنى خۇسۇسىيەتلىرىگە ئىگە بولدى.

شۇنداق قىلىپ مەزكۇر يازما مۇشۇ يەردە تۈگىدى، داۋامىغا قىزىقماقچى بولسىڭىز دىققىتىڭىز بىلىملەر مۇنبىرى بىلەن بىلىملەر سالونىدا بولسۇن، سالون ئىزدەش نامى: bilmlarcom
بىلمىگەننى بىلىملەردىن بىل!
كىرگەندىن كېيىن ئىنكاس يازالايسىز كىرىش | تىزىملىتىڭ

سەھىپە جۇغلانما قائىدىسى

QQ|قاماقخانا|رەسىمسىز ھالەت|يانفۇن| بىلىملەر تورى ( 沪ICP备19027845号-8 )   

GMT+8, 2021-3-9 03:24 , Processed in 2.094175 second(s), 28 queries .

Powered by Discuz! X3.2(NurQut Team)

© 2001-2013 Comsenz Inc.

تېز ئىنكاس چوققىغا قايتىش سەھىپىگە قايتىش