Node教程——入門

5589 ワード

一、ノド入門
(一)、まずインストールをダウンロードしたいです.
1.実はコードの運行環境です.ダウンロードは安定版のLTS拡張子をダウンロードしてダウンロードした後、一回でインストールしたら完成です.
(二)、明確にして、簡単な運行があります.
私達のECMAScriptは依然として万物の核心で、nodeの構成はESCAとNodeモジュールのすべての文法はすべてjsです.
nodeの実行方式:同じクラスのフォルダの下でnode XXXX.JSが実行できます.
(三)、Nodejsモジュール花開発
’モジュール開発’はソフトウェア開発方式です.
  • jsには弊害があり、ファイルとファイルの依存性が明確ではない.命名衝突によるコードカバー
  • モジュール開発方式を使えばこの問題を解決できます.
  • nodejsが開発したモジュール開発規範
  • nodejsの中の一つのjsはモジュールです.デフォルトではモジュール内のものを導入しません.exportsを使って現在のモジュールの中にあるものを使っています.他のファイルで使うならrequireでいいです.
    コア:exportオブジェクトの中には、あなたが先にどこにでもいる属性(関数も属性の本質です.)が別のモジュールにあるrequertiは悪expressの対象に戻ります.そうすると、モジュール間で通信が可能になります.
    コード例aモジュール
     const add = (n1, n2) => n1 + n2;
    exports.add = add; //         
    
    bモジュール
    //const a = require('./03.module-a.js');
    //       js 
    const a = require('./03.module-a'); //       , =   hi     experson  
    console.log(a);
    console.log(a.add(10, 20));
    
    
    exports以外にはどのような方法でエクスポートしますか?1.exprots 2.方式module.exports.version=version;module.exports.sayHi=syHi;
    exportsの対象はmoudele.exportsの二つとも対象住所の引用です.
    注意:export対象とmoude.exports対象が同じ対象でない場合はmodule.exportsに準じる.
    私達の導入操作は相変わらず変わりません.require('./04.module.exports.js')このjs拡張子は削除できます.ここで導入するのは相対パスです.
    コードの例:
    
    const greeting = name => `hello ${name}`;
    
    
    
    const x = 100;
    exports.x = x;
    module.exports.greeting = greeting;
    //  exports   moudle.exports               module.exports  
    module.exports = {
            name: 'zhangsan'
        }
        //                         exports  
    exports = {
        age: 20
    }
    
    (四)、Nodeのいくつかの重要なシステムモジュール
  • ファイルモジュールfs
  • 機能:1.ファイルを読み込むモジュール2.ファイルを書き込む3.フォルダを作成する
  • 使用例:ファイルを読み出す
  •     : fs.redFile('  (  )',[    ],callback)//        
    
    // 1.       fs       
    //           ,    node ,      api     node     
    const fs = require('fs');
    //       ,         fs                    
    
    // 2.       readFile      
    //    :fs.redFile('  (  )',[    ],callback)
    //   []          
    fs.readFile('./01.helloworld.js', 'utf8', (err, data) => {
        //         err             
        //          err  null
        // doc         
        console.log(err);
        console.log(data);
    });
    
    
  • 使用例:書込みファイル(通常はエラーログ収集用)
  •     : fs.writeFile('      (           )','       ',callback)
    
    const fs = require('fs');
    
    //1.     fs.writeFile        ,          
    //    demo,txt             
    fs.writeFile('./demo.txt', '        ', err => {
        if (err != null) {
            console.log(err);
            return;
        }
        console.log('        ');
        //    callback       
    })
    
  • システムモジュールpath
  • なぜこれがありますか?私達はサーバーがwindowとlinuxの下で運行するかもしれませんので、私達のlinuxのパス記号は違っています.これを解決するためにこのものが誕生しました.
    パス文字列1.文法的には、パスをスペルした値を直接取得することができます.
    path.join('  ','  ','....')
    
    2.コードの例
    path                    ,                
    const path = require('path'); //  !!  !
    
    const finalPath = path.join('public', 'uploads', 'avatar');
    
                    ,         
    
    相対パスに問題があります.相対的には現在のコマンドラインウィンドウです.
    注意してください.ほとんどのNodeサーバで開発されています.私たちは基本的に絶対パスを作っています.
    3.現在のファイルの絶対パスを取得するプロパティdirnameという属性の中には現在のjsファイルの絶対パスが保存されています.
    
    const fs = require('fs');
    const path = require('path');
    
    console.log( __dirname);
    
    console.log(path.join(__dirname, '01.helloworld.js'))
    
    fs.readFile(path.join(__dirname, '01.helloworld.js'), 'utf8', (err, doc) => {
        console.log(err)
        console.log(doc)
    });
    
    
    
    (五)、よくある第三者モジュール
    いわゆる第三者モジュールは他の人が作った「輪」です.彼らはみな同じフォルダーの中にいます.
    第三者のモジュールが存在する形式の1.jsファイルが存在し、外部にいくつかのAPIインターフェースが露出しています.このインターフェースを通じて、その中の機能を簡単に入手できます.
    2.コマンドライン機能の形がありますが、どういう意味ですか?このようなモジュールの使用は、コマンドライン入力コマンドによって実現されるものであり、これもCLI足場の実現方法が多い.
  • は、サードパーティモジュール
  • を取得する.
    私たちはnpmにモジュールを保存しています.あなたが欲しいなら発表してもいいです.このnpmにはウェブサイトがあります.興味があります.行ってみてもいいです.
    npmフルネーム'node pack mannage'
    nodeでインストールする時npmツールはすでにその中に付け加えて、使う方式:npm install XXXこれはXXあなたの要るモジュールの名前です.
    1.使用例
  • formidableパッケージnpm install formidableをインストールして、車を打ち返すと完成します.デフォルトでダウンロードした住所は現在のフォルダディレクトリです.中にnode(u)があります.modulesフォルダは、このフォルダにダウンロードされます.
    また、私たちはpackage-lock.jsonファイルを持っています.この中には現在のプロジェクトに使用されているすべてのバッグ情報が記録されています.あなたが値を移動したり、プロジェクトを他の人に渡したりする時、プロジェクト全体が発生する必要はありません.node_を送らなくてもいいです.modulesフォルダは、gitにアップロードしても同じです.このフォルダはアップロードしません.私達はpackage-lock.jsonによってnode_を完成できます.modulesの中のすべての依存パッケージのインストール
    コマンド:npm install
  • formidable npm uninstall formidable
  • をアンインストールします.
  • グローバルインストールには2つの種類があります.ローカルインストールとは、グローバルインストールという大域的なものです.各項目が対応できるローカルインストールは、現在のプロジェクトだけで
  • を使用することです.
  • 重要なグローバルパッケージをインストールします.
    このものは自動更新機能を提供しています.ファイルに変更があれば自動的に更新してnodemonを使って例を挙げます.
    命令ライン:nodemon XX.JS、この時名前が掛かりました.このようにXXX.jsファイルが変更されれば、コンソールは自動的にコントロールを更新します.
    グローバルにnodemonをインストールします
    npm install nodemon -g
    
  • はどうやってこの保留の操作を切りますか?ctrl+cでいいです.
  • です.
  • もう一つ包装nrm
  • 機能はダウンロードのウェブサイトを変えて、原生のnpmは国外でダウンロードして、国内で私達は住所をダウンロードしなければならなくて、このnrmはこの事をしにきたのです.
    インストール
    npm install nrm-gクエリが利用できる国内ダウンロードアドレスnrm ls切り替えnpmダウンロードアドレスnrm user
    nrm user taobaoで車を返したら終わりです.
  • Guglpをインストールしますか?それとも同じ操作フローnpm install glpを注意してください.私達のgulpはライブラリファイルの形式です.現在のプロジェクトだけで
  • を使用できます.
    このgulpは何ですか?これはnodeに基づく先端構築ツールです.構築ツールは何ですか?これを持って反復的な仕事をしてもいいです.例えば、圧縮)js cssコードs 6文法の転換(s 5に転化)less転css抽出公共文書部分の遊覧器の自動更新…まだたくさんの騒动があります.この点については、次の説明をします.