Ios Vue.js v-on:submit(@submit)不适用于iPhone/iPad
在我构建的Vue.js应用程序中有几个表单都使用@submit事件处理程序。这在Windows和我的Android设备上都很好,但在iPhone/iPad上坏了(它不工作)。代码如下所示:Ios Vue.js v-on:submit(@submit)不适用于iPhone/iPad,ios,vue.js,submit,preventdefault,Ios,Vue.js,Submit,Preventdefault,在我构建的Vue.js应用程序中有几个表单都使用@submit事件处理程序。这在Windows和我的Android设备上都很好,但在iPhone/iPad上坏了(它不工作)。代码如下所示: <form class="form-inline my-2 my-lg-0" @submit="submit"> <input class="form-control mr-sm-2" v-model.trim="email" type="email" name="e
<form class="form-inline my-2 my-lg-0" @submit="submit">
<input class="form-control mr-sm-2" v-model.trim="email" type="email" name="email" placeholder="E-mail" aria-label="E-mail">
<input class="form-control mr-sm-2" v-model.trim="password" type="password" name="password" placeholder="Password" aria-label="Password">
<button class="btn btn-outline-success my-2 my-sm-0">Login</button>
</form>
submit () {
event.preventDefault()
Api().post('/login', {
'email' : this.email,
'password' : this.password
}).then((res) => {
if (res.data.success === 'yes') {
this.$router.push('/profile')
}
})
.catch((err) => {
console.log(err)
})
}
我不确定是否是@submit listener不适用于iOS,或者是event.preventDefault()导致了问题…??根据,iOS safari不支持此语法
{
methods: {
submit(){
// this is not supported in ios safari
}
}
}
您可以设置babel来编译Javascript。或者,这也适用于你
{
methods: {
submit: function () {
// this is supported
}
}
}
您可以使用来执行默认设置。它可能不会解决你的问题,但很高兴知道。什么版本的iOS?我记得几年前我发现iOS不支持箭头功能。iOS版本10.2+确实支持它们。很好的提示Roy J,我想我会添加它,看看会发生什么…Eric Guan,我正在测试的iPad正在运行11.2.1我遇到一个问题,如果我使用
@@click='onSubmit()'
在Vue中调用我的submit方法,它会工作。但如果我将其更改为v-on:submit='onSubmit()'
它在单击时不会执行任何操作。不调用该方法。Idk为什么。这是一个延迟响应,但是请检查submit(event){…
event应该在方法中传递。我已经在使用babel了,这不是问题。不过谢谢