20220108のNode.jsに関する記事は3件です。

nvm-windowsを使ってnodeをバージョン管理

最初に node v12を使っていましたが、メンテナンスも2022.4月で切れるのでバージョンアップしなければと思いつつ、のびのびにしていました。 qiita投稿に慣れるためにもv16アップデートしてみます。 環境 os: windous10 node12⇒node16 バージョン管理ツール選択 nodeのバージョン管理ツールはいくつかあるみたいだが、windowsだと選択肢少ないみたい。スター数の多いnvm-windowsにしてみた。 参考 Node.jsのバージョン管理ツールを改めて選定する【2021年】 nvm-windows のインストール 参考 2020-0711 nvm-windows で Node.js の 環境構築 と バージョン管理 (Windows, nvm) git-hubのhttps://github.com/coreybutler/nvm-windows/releases にnvm-setup.zipがあるのでクリックしてダウンロード zipファイルが解凍され、nvm-setup.exeをクリックでインストール開始。インストールフォルダなど聞かれますが、デフォルトでやってみました。 nvmインストールフォルダ C:\Users\〇〇〇〇\AppData\Roaming\nvm node.jsインストールフォルダ C:\Program Files\nodejs Destination location: C:\Users\〇〇〇〇\AppData\Roaming\nvm 途中で今まで使っていた「Node.js v12.18.4.」を今後も使うか?⇒今後も使うかもしれないので「はい」とした nodeインストール nvm install 〇.▼.◇ でNodeのバージョン指定できる 詰まる⓵ 参考ページだと、インストール後にNode使用バージョンの切り替えのため node use 〇.▼.◇ とあるが、「内部コマンドまたは外部コマンド、・・・」とでた。 pathが通ってないのか?システム環境変数を確認するが、通っている。 検索していると、「【nvm】nvm use で exit status 5: になってしまった時の解決方法」にたどり着く。 管理者権限でコマンドプロンプト立ち上げ node use 〇.▼.◇ 動くかの確認 node -v v16.13.1 できたー( ^)o(^ )わーい! 詰まる⓶ 上記で終了かと思った。しかし管理者権限ではいいが、vscodeのterminalでnodeが動かない。(´;ω;`)ウゥゥ 再起動したら動いた。?(ほっと) 終わりに 環境構築はいつも時間かかる。これだからついつい先延ばしにしてしまう。 次の投稿は画像を貼ろうと思っていたが、これも先延ばし・・・
  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

Webの勉強はじめてみた その20 ~Node.js編 ライブラリの使い方~

N予備校「プログラミング入門Webアプリ」コースを受講しています。 今回は第3章4,5節です。 ライブラリを利用する require: 必要なモジュールだけをメモリに記録する CSVを読み込む 'use strict'; //FileSystem Module const fs = require('fs'); //ReadLine Module const readline = require('readline'); //ReadStream from CSV const rs = fs.createReadStream('./popu-pref.csv'); //ReadLine from rs const rl = readline.createInterface({input:rs, output:{}}); //DataMap key: 都道府県 value: 集計データのオブジェクト const prefectureDataMap = new Map(); //line Event // function(lineString){} rl.on('line', lineString=>{ //配列として取得 const columns = lineString.split(','); //年 const year = parseInt(columns[0]); //都道府県 const prefecture = columns[1]; //人口 const popu = parseInt(columns[3]); //2010年 と 2015年を抽出 if(year === 2010 || year === 2015){ //DataMapに都道府県が存在するかチェック let value = prefectureDataMap.get(prefecture); if(!value){ //存在しない場合、valueを初期化 value ={ //2010年人口 popu10: 0, //2015年人口 popu15: 0, //変化率 change: null }; } if(year === 2010){ value.popu10 = popu; } if(year === 2015){ value.popu15 = popu; } //DataMap に追加 prefectureDataMap.set(prefecture, value); } }) //close Event rl.on('close', ()=>{ //変化率 for(let [key, data] of prefectureDataMap){ data.change = data.popu15 / data.popu10; } //配列をソート 比較元(pair1)と比較先(pair2) const rankingArray = Array.from(prefectureDataMap).sort((pair1, pair2) =>{ //pair1[0], pair2[0]は都道府県(key) //pair1[1], pair2[1]は連想配列のオブジェクト //変化率を降順 return pair2[1].change - pair1[1].change; }); const rankingStrings = rankingArray.map(([key, data], num) =>{ let rank = num + 1; return `第 ${rank} 位: ${key} : ${data.popu10} => ${data.popu15} 変化率: ${data.change}`; }) console.log(rankingStrings); }) onメソッド:関数をイベント登録する。AddHandlerみたいなもの? parseInt: 整数値へ変換。CInt。 map: Array の要素それぞれを、与えられた関数を適用した内容に変換する。 yarn Node.jsのためのパッケージマネージャ 依存関係にあるパッケージのインストールも行ってくれる。 インストール curl -o- -L https://yarnpkg.com/install.sh | bash -s -- --version 1.21.1 グローバルインストール: Node.js の実行環境自体に npm パッケージをインストール ローカルインストール: 現在のディレクトリにのみインストール 他のディレクトリから利用することは出来ない。 パッケージ yarn add パッケージ名 npmパッケージのインストール。 ローカルのフォルダを指定してインストールできる。 yarn init npmパッケージ化。package.jasonを作成する。 name : パッケージ名 version : バージョン description : 説明 entry point : ライブラリとして読み込まれるJSファイル repository url : Gitリポジトリに公開する際のURL author : npmに登録された際の著者名 license : デフォルトはMITライセンス private : npmパッケージを公開するかどうか パッケージ化するスクリプト 'use strict'; function add(numbers){ let result = 0; for(let num of numbers){ result = result + num; } return result; } function multi(numbers){ let result = 1; for(let num of numbers){ result = result * num; } return result; } module.exports = { add, multi }; module exports ={} オブジェクトのプロパティとして関数を登録 まとめ アロー関数にまだ戸惑う。 基本的には既存のライブラリを使いましょうということだけれど、そもそもフレームワークやAPIの違いってなんだろうかとふと思った。あとで調べたい。
  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

ADHD向けnpmパッケージ

エンジニアでADHDだと、作業に集中しすぎて、持病の薬を飲み忘れたり、ミーティングをすっぽかしてしまったり、食事を摂るのを忘れてしまったりする。 そんな人が集中を切るためには、アプリケーションを強制終了させる他ない。 そのためのnpmライブラリがadhd-timerである。 npm install --save TakutoYoshikai/adhd-timer 毎日0:00になると、Google ChromeとFirefoxとターミナルを強制的に終了させ、寝る時間だよ!と表示する例 index.js const ADHDTimer = require("adhd-timer"); ADHDTimer([ { schedule: "0 0 0 * * *", callback: function() { console.log("寝る時間だよ!"); } } ], [ "firefox", "google-chrome", "gnome-terminal", ]); 第二引数には、プロセス名を複数登録できる。 このライブラリの予想外のメリットとして、常に終了されることを気にしながら仕事ができるので、時間を気にするようになる。 まとめ 技術力を使って苦手なことを克服していきたい。 不注意すぎて運転免許取れなかったので、自動運転を作れるような技術者になりたい。
  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む