Blockchain code Metaverse VR

Crypto×VR×SmartContract(550)

スポンサーリンク

//tips

//smart contract

Looking for your friendsの下に直近の登録者のアイコン表示を加え、さらにその下には自身のfriendsのアイコンと名前も表示させるとしたら自信のデータベースに接続して自分のuseridドキュメントに格納されているfollowers部分を配列から取り出していくことになる。

ninja配列から取得できるかと考えていたら、indexであることを思い出し、データベースからゴリゴリ取得していくのは保留。

サイドバナーに設置するものを考えていたところhomeボタン、mypageボタンが良さそうなのでまずはそちらを導入する。

import HomeOutlinedIcon from '@mui/icons-material/HomeOutlined';
import MyLocationOutlinedIcon from '@mui/icons-material/MyLocationOutlined';

Editdrawer.jsの方に導入し、

<ListItem button key={text} onClick={()=>handlePagechange(text)}>

各ボタンをクリックしたらイベントが発生するように設定。

Routerを追加することでhomeにはどのページからでも簡単に飛ばせるようになった。

const handlePagechange =(text)=> {
console.log(text);

if(text==='Home'){
router.push("/")
}

}

問題なのは自分のページに飛ぶ方で、これは自分のuseridをページが保有している必要があるが、以前componentからデータベース接続やfetchを使用して複雑怪奇な痛い目にあっている。

なので、authの登録・ログイン段階でmailの方だけでなくuseridもlocalに保存させればだいぶ楽になるのではないかと考えた。

localStorage.setItem('authhistory',email)の localStorage.setItem('authuserid’,userid)をどこかに組みこむ。

if(localStorage.getItem('authhistory')==ninja[0].mail){
setidmailcheck(true)

[id]ページに、ちょうどいいwindowチェック処理があったので利用。

localStorage.setItem('authuserid',ninja[0].userid)

indexページのcreateUserWithEmailAndPassword(auth,email,password)にも追加。

console.log("Document written with ID: ", docRef.id);
localStorage.setItem('authuserid',docRef.id)

また、useeffectを追加し、[id]に遷移したら必ず一度はauthとuseridの照合を行わせるようにする。

useEffect(() => {
if(localStorage.getItem('authhistory')==ninja[0].mail){ localStorage.setItem('authuserid',ninja[0].userid)}
}
}, [])

この後にeditdrawerを修正。

if(text==='MyPage'){
const myid=localStorage.getItem('authuserid')
console.log(myid)
}

きちんとローカルに格納されたuseridを取得できた。

if(text==='MyPage'){
const myid=localStorage.getItem('authuserid')
console.log(myid)
router.push("/ID/"+myid)

}

これでHomeとMyPageを自由自在に行き来できるようになった。

素晴らしい。

[id]とeditページにDebankリンクもつけられるようにするか。

Debankの部品を構成しているdeposit.jsを確認。

Onclick時に遷移というように設計。

<Paper onClick={handlePagechange}>
<h1>Recent Deposits</h1>

async function handlePagechange(e) {
e.preventDefault();

console.log('handlePagechange');

今回は外部リンクに飛ばすのでrouterは使用できない。SNSのリンク遷移と同様に下記で対処。

if(depo){
document.location.href = 'https://debank.com/profile/'+depo
}

Debank部分をクリックするとちゃんとdebankの該当ページに飛ぶようにできた。

次に、YouTubeapiの使用の際にサブネイルを取得してリンクをつけて飛ばす方法を模索してみる。今の方法では重すぎる気がする。

ItsmEロゴの発注やデプロイ方法も確認し始める。

ItsMeで検索してみるとベルギーでitsmeというデジタル身分証明書アプリが作られていることがわかった。おお、いい感じ。

https://kaigaisurvival.com/itsme-belgium-id-app/4229/

https://www.itsme-id.com/

ただ、内容としては違うので問題なさそう。

他にも友達とのSNSツールとしてapp storeに下記があった。こちらも用途が異なるため問題なさそう。

https://apps.apple.com/us/app/itsme/id1289087191

一応日本の商標も確認しておこうかと思ったらシステムメンテ中とのこと。

https://www.jpo.go.jp/support/startup/shohyo_search.html#step01

人気の記事

1

コロナによる需要変化 コロナパンデミックの影響で、人々は外に出られなくなり、自宅で過ごす時間が増えました。 この自粛ムードの中、下記のようなビジネスの需要変化が引き起こされています。 【利用者減少】 ...

2

米国レストランの決済時に毎日お世話になっていた「Square」のビジネスモデルについて本日はふれていきたいと思います。 「Square」とは、ネットにつながったモバイル端末と専用のカードリーダーを用意 ...

3

無料でネットショップを開けるアプリとして多くの人に驚きを与えたBASE株式会社が、2019年10月25日東証マザーズに上場しました。2020年2月時点で90万店を超えるショップを抱えるまでに成長してい ...

4

2011年にサービスを開始してから圧倒的な成長率を誇るインテリア通販サイト 【FLYMEe/フライミー】を皆さんご存じでしょうか。 「自分のイメージするインテリア、本当に欲しいインテリアがどこにあるの ...

5

ナイキのSNKRSが、なぜこれほどまでに人気なのか?調べてみました。 きっかけは米国での友達との会話。彼は自分のシューズをみせて、「これ20万円もしたんだぜ。」と語ってくれました。 あまり靴に興味がな ...

-Blockchain, code, Metaverse, VR
-, ,

Copyright© BUSINESS HACKER , 2022 All Rights Reserved Powered by AFFINGER5.