1

我正在尝试制作一个电子应用程序并将其从 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}

在第一次单击提交按钮时,记录的所有内容都是“正在添加的用户”,然后在第二次单击时,再次记录相同的消息,但后来我也得到了这个: 它的行为就像它被按下了两次,但是直到它被第二次按下才行动

4

0 回答 0