node.js」タグアーカイブ

node.jsのインストール先を知る方法

fnmでパッケージ管理しnode.jsをインストールしている際などに、インストール先を知る方法。

動作環境

コマンド実行例

% npm bin -g

/Users/USER_NAME/Library/Application Support/fnm/node-versions/v16.17.0/installation/bin

windows環境やnfm下で管理していてwhichコマンドでインストール先を調べれらないときに便利です。

※Mac, Windowsでも使えます

nodist環境にて、npmでインストールできずに、エラーが出る

Windows環境にて、nodistでnode.jsを管理している際に、npmのインストールが失敗してエラーが出るときの対処方法

エラー内容

$ nodist npm 6.14.10
npm 6.14.10

$ npm -v
internal/modules/cjs/loader.js:883
  throw err;
  ^

Error: Cannot find module 'C:\Program Files (x86)\Nodist\npmv\6.14.10\bin\npm-cli.js'
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:880:15    5)
    at Function.Module._load (internal/modules/cjs/loader.js:725:27)
    at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.    .js:72:12)
    at internal/main/run_main_module.js:17:47 {
  code: 'MODULE_NOT_FOUND',
  requireStack: []
}

解決方法

ダウンロード&インストールに失敗しているようなので、nodistのnpmの展開先を削除する。

各バージョンのnpmのインストール先は、こちら
C:\Program Files (x86)\Nodist\npmv

エラーが出ていて、インストールしたいバージョンを削除する。

再度、npmをnodist経由でインストールする

$ nodist npm 6.14.10

もしくは、

$ nodist npm match

正常にインストールされていると、

$ npm -v
6.14.10

log4jsのConfigurationの書き方がv2で変更になった

Node.js環境でログ出力をするlog4jsのConfigurationがv1からv2以降で大きく変わった。

v2.0x以降の記述方法

{
    appenders: {
        default: {
            type: 'file',
            "filename": "log/server.log",
            "maxLogSize":104857600,
            "layout": {
                "type": "pattern",
                "pattern": "%d [%p] %m"}
        }

    },
    categories: { default: { appenders: ['default'], level: 'debug' } }
}

古い記述方法だと、must have property “appenders” of type objectというエラーが発生する。
詳細は、Migrating from log4js versions older than 2.x

macOS Sierraでnodeを使えるようにする方法

homebrewでnodeをインストールする方法もあるが、開発環境としてパッケージのバージョン管理をしたいので、node専用のパッケージ管理環境 nodebrewを使用してインストールする

事前に、brew経由でnodeをインストールしている場合は、アンインストールする。

nodebrewのインストール

homebrew経由だと、うまく動作しない

$ curl -L git.io/nodebrew | perl - setup

環境変数にパスを通す

$ echo 'export PATH=$HOME/.nodebrew/current/bin:$PATH' >> ~/.bash_profile

※.bash_profileが既存する場合は、修正もしくは追記する。

反映させる

$ source ~/.bash_profile

インストール可能なバージョンの一覧を表示

$ nodebrew ls-all

バイナリの安定版をインストール

$ nodebrew install-binary stable

インストール済みのバージョンを確認

$ nodebrew ls
v7.9.0

current: none

使用するバージョンを指定

$ nodebrew use v7.9.0

選択されているバージョンを確認

$ node -v
v7.9.0

node.jsで色解析

node.jsで色解析できるnpmパッケージ

palette
https://www.npmjs.com/package/palette

color-thief
https://www.npmjs.com/package/color-thief

いずれも、canvasを利用して、色取得をさせる。color-thiefの方が画像ファイル→canvasへの変換もラップしてくれている。また、color-thifは、ドメナントカラーも返してくる。

node.jsでunderscore.jsを使う

Java Scriptで配列、オブジェクトを扱いを便利にするunderscore.js。node.jsでも使える。

npmでインストール

$ npm install --save underscore

スクリプトで宣言、

var __ = require('underscore');

ここで気を付けなければならないのが、予約語の関係で、変数(インスタンス)名はブラウザで使う時のように、”_”とはせず、”__”(_を2個)にすること。

Via! node.jsでunderscore.jsを使う | okame-log

node.jsでsprintf

数値の頭に0を付けたりするのに便利なsprintf。node.jsでも使える。

npmでこちらをインストール
sprintf

$ node install --save sprintf-js

スクリプトの冒頭で宣言して、

sprintf = require('sprintf').sprintf;

こんな感じで使う。

var str = sprintf('%04d', foo);