我正在尝试制作一个电子应用程序并将其从 HTML 表单上传到 supbase 数据库。HTML 部分工作得很好,并且在单独的文件中运行正确的函数也工作得很好,但是在我尝试检索数据或将数据上传到数据库之前它不起作用,直到 HTML 表单上的提交按钮是第二次按下。但是,每当我尝试上传数据时,它再次只在第二次点击时起作用,但就像它发生了两次一样。
以下是按钮及其功能的 HTML 代码:
<input type='button' class='submit' id='submit' onClick="send()">
(...)
<script>
const user = require('../utils/supabase/user.js')
const { createClient } = require('@supabase/supabase-js')
const supabase = createClient(
'*********************',
'*********************')
async function send(){
var email = 'test@test.com'
var discord = 'test'
var username = 'test-email'
var password = 'test'
const result1 = await user.newUser(supabase, email, discord, username, password)
console.log('------')
console.log(result1)
var result = await user.loadUser(supabase, username)
console.log('result recieved')
console.log(result)
}
</script>
用户.js:
var presses = 0
async function loadUser(supabase, username){
presses++
console.log(presses) //testing if it registers all clicks or just the second click
let result = await supabase
.from('test')
.select('test1, test2')
.eq('test1',username)
return result.data
}
async function newUser(supabase, email, discord, username, password){
console.log('user being added')
let result = await supabase
.from('test')
.insert([
{test1: username, test2: password}
]).then((returns) => {
console.log('returns = ')
console.log(returns)
})
.catch(console.error())
// console.log(result.data)
}
module.exports = {loadUser, newUser, presses}
在第一次单击提交按钮时,记录的所有内容都是“正在添加的用户”,然后在第二次单击时,再次记录相同的消息,但后来我也得到了这个: 它的行为就像它被按下了两次,但是直到它被第二次按下才行动