Vuejs JSX onTouchStart无法识别

时间:2017-06-09 05:55:12

标签: javascript vuejs2 jsx

我正在尝试将JSX与Vuejs一起使用,目前我尝试这样做

export default {
  methods: {
    handleClick: function (e) {
      console.log('clicking: ', e)
    },
    handleTouchStart: function (e) {
      console.log('touching: ', e)
    }
  },
  render (h) {
    return (
      <div
        className="slider"
        onTouchStart={(e) => this.handleTouchStart(e)}
        onClick={(e) => this.handleClick(e)}>
        <h1> Hey there </h1>
      </div>
    )
  }
}

未调用handleTouchStart函数,但我们仍然可以看到在单击元素时调用handleClick。我不确定Vue JSX语法中支持多少个Synthetic事件?

我们是否需要任何其他库让Vue知道touch事件?

1 个答案:

答案 0 :(得分:0)

嗯,我发现onTouchStartonTouchMoveonTouchEnd的映射方式与onTouchstartonTouchmoveonTouchend相同。不知道为什么它只是on之后的第一个字母被大写,因为JSX应该支持camel case语法。无论如何替换上述事件,它都能正确检测事件名称。