@input 绑定的 bindinput 方法无法记录输入值

login.wpy中有两个输入框,username 和 password,都采用了@input 绑定相应的bindiput方法来记录输入的数据。
比如username:

<view class="weui-cell__bd">
    <input class="weui-input" placeholder="手机号或邮箱" @input="bindUsernameInput" />
</view>

绑定的方法为:

      // 绑定用户名 input 变化
      bindUsernameInput (e) {
        this.username = e.detail.value
      },

遇到的问题是我填入账号密码,总是会被提示‘请填写账户名和密码’。怀疑username和password变量都为空,加入打印试试:

  // 绑定用户名 input 变化
  bindUsernameInput (e) {
    this.username = e.detail.value
    console.log('test username input');
  },

发现我在输入数据时,console.log根本没执行,也就是@input绑定的方法没有触发。
试试替换@input为@tap,点击输入框,可以触发indUsernameInput方法在控制台打印出来测试数据,但换回@input 则还是无法打印出测试数据。

已经尝试全部复制粘贴教程的代码来替换掉自己输入的代码,问题依旧。

卡在这里了,请大家不吝赐教。先谢过!

《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 3

我也遇到这个问题了,请问楼主解决了吗

5年前 评论

@921t @input方法仍然无法触发bindinput。不过我试着绑定@blur,可以获取到输入值。这样可以先继续后面课程的学习。

<view class="weui-cell__bd">
    <input class="weui-input" placeholder="手机号或邮箱" @input="bindUsernameInput" @blur="bindUsernameInput"/>
</view>
5年前 评论

@discus2013 感谢楼主的解答 :smile_cat:

5年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!