gpt4 book ai didi

javascript - 输入上的 v-model 返回输入元素而不是值

转载 作者:行者123 更新时间:2023-11-30 14:30:31 26 4
gpt4 key购买 nike

我试图在不使用 Vuex 的情况下使用 Vue 设置用户登录和 Angular 色身份验证,因为它对我们的应用程序范围来说有点多。在最初尝试在 Vue 之外使用 jQuery AJAX 失败后,我放弃了使用 Vue 的面向数据模型的努力,我一直在努力解决这个问题(我是一名设计师,不是真正的开发人员)。我的后端开发人员使用纯 PHP 编写并使用 mySQL,以供引用。

this tutorial 中汲取灵感,我正在尝试使用 v-model 通过 axios 将表单数据发送到服务器。

模板:

<form class="login-form" id="loginform" @submit.prevent="login">
<div class="form-group space">
<label class="float-label" for="username">Username</label>
<input v-model="username" type="username" id="username" class="form-control" placeholder="username">
</div>
<div class="form-group">
<label class="float-label" for="username">Password</label>
<input v-model="password" type="password" id="password" class="form-control" placeholder="password">
</div>
<div class="form-group">
<button type="submit" class="btn btn-primary float-right" id="login">Log in</button>
</div>
</form>

脚本:

export default {
name: 'Login',
data () {
return {
username: '',
password: ''
}
},
methods: {
login: function () {
const loginInfo = { username, password }
console.log(loginInfo)
new Promise ((resolve, reject) => {
axios({url: 'api.com/index.php', data: loginInfo, method: 'POST' })
.then(resp => {
const token = resp.data.token
localStorage.setItem('user_token', token) // store the token in localstorage
const employeeId = resp.data.employee_id
localStorage.setItem('employee_id', employeeId) // store the id in localstorage
resolve(resp)
console.log(resp);
})
.catch(err => {
localStorage.removeItem('user_token') // if the request fails, remove any possible user token if possible
reject(err)
})
})
// myLoginRoutine(loginInfo).then(() => {
// this.$router.push('/')
// })
}
}
}

请求没有问题,但没有返回任何东西!我决定检查一下我发给他的是什么……你瞧,const loginInfo 不是预期的输入值,而是 {username: input#username.form-控件,密码:input#password.form-control

坦率地说,我很困惑。我以前在表单输入上使用过 v-model 没有任何问题,并且不知道为什么会发生这种情况或如何解决它。有什么想法吗?

最佳答案

对于 future 的访问者:axios data 需要一个包含后端这些键的对象,但您没有正确填充该对象。

改变

const loginInfo = { 用户名,密码 }

const loginInfo = { 用户名:this.username,密码:this.password }

关于javascript - 输入上的 v-model 返回输入元素而不是值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51270729/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com