やってみる

アウトプットすべく己を導くためのブログ。その試行錯誤すらたれ流す。

JS(ES6)のimportを使ってみた

 やっと使えた。

成果物

対象環境

  • Raspbierry pi 3 Model B+
  • Raspbian stretch 2018-06-27
  • Chromium 65.0.3325.181

前回

 ES6 Import機能はChrome61以降でないと使えない。Raspbian jessieではChrome56までしか使えなかった。

今回

 Raspbian Chromeのバージョンが原因でimportできないと思っていたが、実際はコードに<script type="module"を付与していないのが原因だった。

コード

 この表記が最小かつ紛らわしくないものと思われる。

importする要点

  • <script type="module" src="Main.js"></script>
    • <script>要素のtype属性値にmoduleをセットする(これまではtext/javascriptだった)
  • import Sub from './Sub.js';
    • ファイルパスが相対パスのときは必ず先頭に/,./,../のいずれかを付与する
    • export defaultのときはimport時{}で囲わない

 これらを怠るとエラーになってインポートできない。

所感

 import時の相対ファイルパス指定が面倒。そのくらい察して欲しい。Linuxと同じかと思いきや/だと絶対パスを意味するので同じではない。ささいなこととはいえ、面倒かつ紛らわしい指定方法。新しいことを覚えねばならない。