質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.47%
Vue.js

Vue.jsは、Webアプリケーションのインターフェースを構築するためのオープンソースJavaScriptフレームワークです。

Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

2回答

1177閲覧

npmの使用の為にNode.jsをインストールする必要性について

study_111

総合スコア82

Vue.js

Vue.jsは、Webアプリケーションのインターフェースを構築するためのオープンソースJavaScriptフレームワークです。

Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

0クリップ

投稿2020/08/29 01:41

編集2020/08/29 01:56

少々気になったことがあるのですが、VueCliで作成したプロジェクトをサーバーでビルドする為に、npmコマンドを使用していますが、npmコマンドを使用する為だけであれば、Node.jsはインストールする必要はないでしょうか?
今までnpmを使う為にNode.jsをインストールしていたのですが、その必要がなければ、Node.jsをインストールせず、npmのみのインストールで良いのではないかと思っています。
こちらの部分につきまして、少々曖昧な理解となっています為、アドバイスの程、頂けましたら幸いです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

nodejsのパッケージマネージャーがnpmなのでnpmを使う為だけにnodejsのインストールが必要です

投稿2020/08/29 01:43

hentaiman

総合スコア6422

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hentaiman

2020/08/29 01:55 編集

npmで入れるものはnodejsで作られているからnodejsが無いと動かしようが無いと言った方が分かりやすいか?
study_111

2020/08/29 02:20 編集

ご回答ありがとうございます。 ちなみになのですが、そうなりますと開発環境のNode.jsと本番環境のNode.jsのバージョンは基本的には揃えた方が良いでしょうか...?
hentaiman

2020/08/29 02:53

もちろんです。揃えた方が良いと言うより揃えないといけません。npmで入れるパッケージのバージョンも揃えなくてはいけません。パッケージは揃えるというより、packege.jsonを使ってインストールしましょう。
study_111

2020/08/29 03:24 編集

ご返信ありがとうございます。 なるほどです... > 揃えた方が良いと言うより揃えないといけません。npmで入れるパッケージのバージョンも揃えなくてはいけません こちらなのですが、パッケージのバージョンを揃えなければならないの分かるのですが、何故Node.jsのバージョンも揃えなければならないのでしょうか...?
hentaiman

2020/08/29 03:36

メインでpython使ってるようなので例としてpython挙げますけど、pythonでも3.7では使えて3.8で使えないモジュールとかありますよね?そういう懸念点を少しでも排除するためにバージョン揃えるのと同じ事ですよ。 試しにnodejsのバージョンが違う二つの環境を用意して作業してみてください。いずれ(もしくは最初から)エラーにぶち当たります。そしてその時のエラーはバージョンが原因だとか吐いてくれないので、エラーが出てたら原因探るのに苦労して困る事になるかと思います。こうやって事前に教えちゃってるので苦労はしないと思うけど、もし知らない状態だったら難儀するはずです。
hentaiman

2020/08/29 03:48

それと開発が14、本番が13だとして、パッケージの14にしかない書き方をしていてそれをパッケージのバージョンだけ揃えて本番に反映しようとしたらエラーになります。 こうやって説明聞くよりもとりあえず異なるバージョンで試して揃える必要がある理由を実感する方が早いかもしれません。
study_111

2020/08/29 04:19

ご親切に、ご説明頂きありがとうございます。 参考になりました。
guest

0

`npmコマンドを使用していますが、npmコマンドを使用する為だけであれば、Node.jsはインストールする必要はないでしょうか?

Node.jsは絶対に必要です。

npm installで導入したパッケージは、
JSファイルをnpmライブラリ配布サイトから落としてきているだけなんです。
npxnpm install -gでコマンドラインツールとして持ってきたとしても根っこの部分は変わりません。

JSファイルってなんでしょう?
単なるテキストで書かれたファイルです。
実行者が居ないと何も出来ない。

ここでNode.jsの出番です。
Node.jsを使ってJSファイルを解析→実行しているわけですよ。

例外としてバイナリファイルを導入するnode-gypという仕組みがありますが、
これも最初のバイナリファイルを作るためにPythonやNode.js、GCC等を使っているのでやはりNode.jsは欠かせません。

投稿2020/08/31 02:57

編集2020/08/31 02:59
miyabi-sun

総合スコア21158

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

study_111

2020/08/31 04:53 編集

ご回答ありがとうございます。 大方理解することが出来たのですが、どうしても気になることがあります。 > JSファイルってなんでしょう? 単なるテキストで書かれたファイルです。 実行者が居ないと何も出来ない。 ここの部分ですが、仮にライブラリをnpmライブラリ配布サイトからダウンロードを行なったてきた場合でも、Vue.jsはブラウザで動作する為、サーバー上では必要ないといったことにはなりませんでしょうか...?
hentaiman

2020/08/31 04:59

webブラウザで動くパッケージだけを対象としていて、尚且つbuild後のソースについてのみ言っているならその理解であってます
maisumakun

2020/08/31 05:01

> Vue.jsはブラウザで動作する為、サーバー上では必要ないといったことにはなりませんでしょうか...? はい、事前にJavaScriptを生成して、その結果をサーバに置くようにすれば、サーバ上でNode.jsを動かす必要はありません。 (もちろん、サーバサイドレンダリングを行う、などでサーバサイドのNode.jsが必要な場合はこの限りでありません)
study_111

2020/08/31 07:42 編集

> webブラウザで動くパッケージだけを対象としていて、尚且つbuild後のソースについてのみ言っているならその理解であってます こちらですが、例えばVueCliでプロジェクトを作成し、「npm run serve」などとして、ローカル環境で「build」せずに実行したいなどの為には、Node.jsが必要になってくる形でしょうか?
hentaiman

2020/08/31 08:23

そういう形です
study_111

2020/08/31 08:54 編集

> はい、事前にJavaScriptを生成して、その結果をサーバに置くようにすれば、 こちら少々気になったのですが、miyabi-sunさんのご回答に、「javascript = テキストで書かれたファイル」とありました。 そうなりますと、Node.jsがなくとも、「npm install」を行ないライブラリをインストールした時すでに、JavaScriptが生成され、その結果がサーバに置かれたということになるのでしょうか?
maisumakun

2020/08/31 09:02

> そうなりますと、Node.jsがなくとも、「npm install」を行ないライブラリをインストールした時すでに npmのコード自体がJavaScriptで書かれていますので、Node.jsなしでnpmを実行することそのものができません。
miyabi-sun

2020/08/31 09:03

> npm install」を行ないライブラリをインストールした時すでに、JavaScriptが生成され、その結果がサーバに置かれたということになるのでしょうか? 今までの話聞いてたの?寝てた?レベルのヤバイ質問だ…… 多分、前提知識がかなり不足しているから、 このまま問答しても勘違いが深まるだけだと思うよ。 Node.jsの事ちゃんと勉強して必要か不要か判断出来るようになったほうが良いと思う。 そもそもVue.jsはNode.jsの知識無しに扱うの無理だから そういった意味でも急がばまわれで学習すべきだよ。
study_111

2020/08/31 09:07

>npmのコード自体がJavaScriptで書かれていますので、Node.jsなしでnpmを実行することそのものができません。 そういうことだったのですね。 そうなりますと、確かに、Node.jsは必要になってきますよね
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.47%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問