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

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

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

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

JavaScript

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

Q&A

解決済

2回答

4182閲覧

node.jsにてサーバ側のjsファイルを複数作りたい

GoMaSio

総合スコア10

Node.js

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

JavaScript

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

0グッド

3クリップ

投稿2020/08/24 17:28

現在私はnode.jsを使ってサーバ側のjsファイルを書いていますが、文が多くなったため
jsファイルを分けたいと考えているのですが、ファイルを複数作っても問題ないか・作り方が分からないためご教授願えないでしょうか?
よろしくお願いします。

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

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

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

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

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

guest

回答2

0

Node.jsではrequireを使うのが基本です。
定数をまとめたjsファイル
機能別にまとめたjsファイル
などをわかりやすいディレクトリに配置してrequireすればよいです。
jsファイル側では、module.exportsで取り出せるようにします。

ディレクトリに機能別に分けたjsファイルをrequireする例
イメージ説明

よく使う定数をオブジェクトにまとめてmodule.exportsする例(app.config.js)
イメージ説明

機能単位で関数をまとめてmodule.exportsする例(accountcontrol.js)
イメージ説明

投稿2020/08/25 01:06

編集2020/08/25 01:08
technocore

総合スコア7337

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

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

GoMaSio

2020/08/25 20:28

出来ました!ありがとうございます! 参考例まで記載していただき助かります!
technocore

2020/08/25 21:15

何ができたのですか? 解決した結果を書いて下さい。
guest

0

ベストアンサー

サーバ側のjsファイル

NodeJS用のモジュールを書くことになります。

  1. require("path/to/modulename") でモジュールを読み込む。
  2. module.exports(exports.yourprop) でモジュールのプロパティを公開する。

以上の2つが基本です。

+- project/ main.js mymodule.js +- lib/ world.js

[main.js]

javascript

1let sub = require("./mymodule"); 2let { world } = require("./lib/world"); 3console.log( "hello," + sub ); 4console.log( "hello," + world );

[mymodule.js]

javascript

1module.exports = "world!";

[world.js]

javascript

1exports.world = "world?";

実行してみる(サーバーではないが、自前のモジュールの読み込みテストとして)

$ node main.js hello,world! hello,world?

詳細は公式ドキュメントModulesを確認してください。

投稿2020/08/25 00:43

AkitoshiManabe

総合スコア5434

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

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

GoMaSio

2020/08/25 20:27

うおおお出来ました!ありがとうございます! 簡単にできてしまうんですね、参考になりました!
AkitoshiManabe

2020/08/25 23:06

モジュール化の基本が理解できましたら時間を見つけて公式の説明を(翻訳してでも)読んでみてください。モジュールのPATH指定を略するための「node_modules ディレクトリ」やサーチPATHに追加された(node_modulesに配備された)モジュールの読み込み順、モジュールシステムでのキャッシュなど細かな規則も説明されています。
GoMaSio

2020/08/26 07:49

ありがとうございます! 正直初心者の私には理解し難い部分が多々ありますが、node.jsはとても使いやすく これからお世話になるかもしれないので是非読んでみます
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問