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

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

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

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

Nuxt.js

Nuxt.jsは、ユニバーサルなSPAが開発可能なVue.jsベースのフレームワーク。UIの描画サポートに特化しており、SSRにおけるサーバーサイドとクライアントサイドのUIレンダリングなどさまざまな機能を持ちます。

JavaScript

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

Q&A

解決済

1回答

1498閲覧

Nuxtにおけるシングルトンとは何でしょうか?

hajifu

総合スコア88

Vue.js

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

Nuxt.js

Nuxt.jsは、ユニバーサルなSPAが開発可能なVue.jsベースのフレームワーク。UIの描画サポートに特化しており、SSRにおけるサーバーサイドとクライアントサイドのUIレンダリングなどさまざまな機能を持ちます。

JavaScript

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

0グッド

0クリップ

投稿2020/07/18 10:46

Nuxtの使い方をまとめているサイトで以下のような記述がありました。

例えば axios を使いたい場合
yarn add axios

js

1// コンポーネントで 2import axios from 'axios'

これだけでは axios がシングルトンにならず、容量が肥大化する。それを防ぐために、 nuxt.config.js に下記を記載する。

js

module.exports = {
build: {
vendor: ['axios']
}
}

このシングルトンとはなんでしょうか??
軽くググってみるとJavaなどの記事が出てきてよくわかりませんでした。

Nuxtに追加したモジュールはこのようにbuild.vendor に記述した方がいいのでしょうか?今まで全くやったことのないことだったので、気になって質問しました。

シングルトンとは何なのか、またほかのモジュールでもこのようにすべき条件などがありましたら教えていただけますと幸いです。宜しくお願い致します。

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

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

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

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

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

guest

回答1

0

ベストアンサー

シングルトンはjavaだけでなくあらゆる言語に存在します。

ただjavaがよく出てくる理由としては、オブジェクト指向の代表格であり歴史も古いjavaの記事が多く見つかるだけです。

簡単に説明するとシングルトンとは、ひとつのインスタンスを共有するものです。

この説明だけで理解出来ない場合、またコメントください。

投稿2020/07/18 12:23

退会済みユーザー

退会済みユーザー

総合スコア0

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

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

hajifu

2020/07/18 12:28

ご回答いただきありがとうございます! きちんとは理解できていないのですが… 複数のページで複数回axiosをインポートするとその都度axiosのインスタンスができてしまうが、ひとつのインスタンスを共有することでエコだ、みたいなことでしょうか? 元記事の「容量が肥大化する」というのは、ページを遷移しても、importしたaxiosのインスタンスが残ってしまうということなのでしょうか。
退会済みユーザー

退会済みユーザー

2020/07/18 12:32

そうです。 複数のインスタンスを生成する = メモリをその分消費する につながるため シングルトンになるようにコーディングすることで、メモリ(容量)が節約されます。 他にも、値の引継ぎを行うためにシングルトンなコーディングをする場合もあります。
hajifu

2020/07/18 12:41

なるほど!丁寧にありがとうございました! 今まで気にしたことのない観点だったので、今後またいろいろ調べてみようと思います!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問