ファイルを分ける・借りてくる

INPUT · スライド

ファイルを分けてつなぐ

01 / 05

分けただけでは動かない

前のレッスンで役割ごとに切り分けた。次はそれを別々のファイルに置いてみる。

ただし、ファイルを分けた瞬間に困ることがある。片方のファイルに書いた関数の名前は、もう片方からは見えないんだ。これまで名前で呼べていたのは、同じファイルの中にいたからなんだね。

そこで使うのが exportimport の2つ。外に出す係と、取り込む係だよ。

02 / 05

外に出す: export default

出したいものの前に export default と書く。これで「このファイルの代表として、これを外へ渡すよ」という意味になる。

書くのはこれだけ。ふだんの関数の定義に、言葉を2つ足しただけだね。

// message.jsexport default function message() {  console.log("いらっしゃい");}

03 / 05

取り込む: import

受け取る側は import 名前 from './ファイル名' と書く。置き場所はファイルのいちばん上

取り込んでしまえば、あとは自分のファイルに書いた関数とまったく同じように呼べるよ。

// main.jsimport message from './message.js';message();

実行結果

いらっしゃい

04 / 05

名前は受け取る側が決める

export default は「名前のない代表選手」を1つ出す書き方。だから取り込む側は好きな名前を付けられる

下のように hello という名前で受け取っても、ちゃんと同じ関数が動く。とはいえ読む人が混乱するから、ふつうは元と同じ名前にしておくのがおすすめだよ。

import hello from './message.js';hello();

実行結果

いらっしゃい

05 / 05

実行が始まるのは main.js

ここからの演習では、エディタの上にファイルのタブが並ぶ。タップで切り替えて、それぞれの中身を書いていこう。

実行ボタンを押したときに動きはじめるのは、いつも main.js だよ。流れはこう。

  • main.jsimport が、相手のファイルを読み込む
  • 読み込まれたファイルの中身が先に動く
  • そのあと main.js の続きが動く

それじゃあ、2つのファイルをつないでみよう。