vue jsx 如何根据变量动态渲染指令?

<el-input
  {
    if(this.isParent){
        v-model={this.parent}
    }else{
        v-model={this.child}
    }
  }
  placeholder='请输入'
/>
// 生成以下的 jsx 
<el-input
  v-model={this.parent}// isParent true
  placeholder='请输入'
/>
<el-input
  v-model={this.child}// isParent false
  placeholder='请输入'
/>

请问各位大佬是否有什么语法能实现这样的判断?

阅读 2.1k
1 个回答

非要v-model动态绑的话可以用computed,自己写个get、set

或者你自己写个jsx编译后的,v-model在自定义组件上编译出来是这样的:

render(h) {
    return h("el-input", {
      "model": {
        value: this.a,
        callback: $$v => {
          this.a = $$v;
        }
      }
    });
  }
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题