問題在于 identityNumber 變數。它回傳需要字串的錯誤鏈接 23。但是我的身份證號碼是一個字串。請幫忙。另一個目標是通過將隨機 int 附加到 now Date() 來使標識號唯一。
import React, { useState } from "react";
import {initializeApp} from 'firebase/app';
import { getDatabase, ref, set, } from 'firebase/database';
export default function Username(props) {
const [userName, setUsername] = useState('');
const identityNumber = 'hello';
const clientCredentials = {
apiKey: process.env.NEXT_PUBLIC_FIREBASE_API_KEY,
authDomain: process.env.NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN,
databaseURL: process.env.NEXT_PUBLIC_FIREBASE_DATABASE_URL,
projectId: process.env.NEXT_PUBLIC_FIREBASE_PROJECT_ID,
storageBucket: process.env.NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET,
messagingSenderId: process.env.NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID,
appId: process.env.NEXT_PUBLIC_FIREBASE_APP_ID,
}
const app = initializeApp(clientCredentials);
const address = props.address;
const db = getDatabase();
function writeUserData(userId, userN, address) {
const reference = ref(db, 'users/' userId);
set(reference, {
username: userN,
walletAddress: address
});
}
function handleChange(event) {
setUsername(event.target.value);
}
function handleClick() {
writeUserData( { identityNumber }, { userName }, { address });
}
return (
<>
<div>
<p className = "account-Info" >address: {address}</p>
</div>
<div id="form">
<h2 className='user-Create' > Create Username</h2>
<form id='set-User'>
<input id='username' className="user-Create" type='text' onChange={handleChange}
required minLength='3' maxLength='30' pattern="[a-zA-Z0-9_] " title='only letters, numbers, and underscores.'/>
<button className='user-Create' type="submit" onClick={handleClick}>Link Username</button>
<p id='call-User' className='account-Info'> { userName }</p>
</form>
</div>
</>
);
}
uj5u.com熱心網友回復:
將變數包裝在花括號中會創建文字物件,但不要:
function handleClick() {
writeUserData(identityNumber, userName, address);
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/494013.html
標籤:javascript 反应 火力基地 firebase-实时数据库 下一个.js
上一篇:將JS映射重寫為forEach
