日報(2021-05-31) firebaseui を vue のコンポーネントで使う

はじめに

5月は日報を全然書いていませんでした

連休明けからマンションの大規模修繕がはじまり、それまでにジャングル化してたベランダの折鶴蘭をなんとかする必要があって連休中はほぼそれに費やしてました
折鶴蘭は土もなんにもない所に株を伸ばして勝手に増えるのですが、増えてしばらくすると折鶴蘭の根に周りに黒い土がどんどんできてくるのが面白いです
赤い土なら黄砂なり多摩川の砂なりが飛んできたのでしょうが、黒土なのでそれらとは違います。ダンゴムシとかヤスデとかそういった虫が根だか落ち葉だかを食べて土にしてるんですね
お百姓さんはいい土が植物を育てると勘違いしてるみたいですが、実際は土は植物と虫がつくります

その他、今月は firebaseui を vue のコンポーネントにくくりだそうとしてドハマリしてました

なにが問題なのか

firebase をアプリ側、つまりコンポーネントの親側で初期化してインスタンスプロパティに登録します
子コンポーネントからこれを参照するのですが Imgur こんな感じでエラーになります

これ、WriterDuet さんの このコメントが informative で、要するにコンポーネント側 の package.json から firebase 追い出す必要があります

firebase に依存するコンポーネント

firebaseui が firebase に依存しているので、というかまさに firebaseui が内部で異なる firebase を使ってしまうことが前述のエラーの原因なのだそうで、firebaseui も node module として持たないようにしないといけません

ちょっとはまったのが firebaseui の css で、これは <style> タグの中でインポートすることができます

<style>
/* https://medium.com/@renatello/load-external-css-file-into-vue-js-component-e61673753a2b */
@import 'https://www.gstatic.com/firebasejs/ui/4.8.0/firebase-ui-auth.css';
</style>

結論

で、いろいろ頑張ってなんとかこれができたのでした、めでたしめでたし


Last Updated: 6/5/2021, 2:39:54 PM