如何在iview组件中使用jsx
1、安装插件
安装插件:transform-vue-jsx
如果需要使用v-model还需要安装jsx-v-model
在babelrc中配置
"plugins": [["import", {
"libraryName": "iview",
"libraryDirectory": "src/components"}],
"transform-vue-jsx", "transform-runtime"],
"env": {
"test": {
"presets": ["env", "stage-2"],
"plugins": ["transform-vue-jsx", "transform-es2015-modules-commonjs", "dynamic-import-node"]
}
}2、使用及注意事项
下面粘贴的代码是Table组件的columns的配置项,这里需要注意的有2点:
1、需要全局注册组件,如输入框组件不可以写成Input必须写成i-input;
2、事件绑定:如点击事件需要携程onOn-click
{
title: "关系名",
key: "name",
width: 180,
render: (h, params) => {
let { index, row } = params;
return (
<div>
{this.editShow && this.editIndex === index ? (
<span>
<i-input
placeholder="中文"
value={this.editRow.cnName}
onOn-blur={this.activeCellChange("cnName")}
/>
<i-input
placeholder="英文"
value={this.editRow.name}
onOn-blur={this.activeCellChange("name")}
/>
</span>
) : (
<span
title={`${row.cnName}(${row.name})`}
>{`${row.cnName}(${row.name})`}</span>
)}
</div>
);
}
}本文内容仅供个人学习、研究或参考使用,不构成任何形式的决策建议、专业指导或法律依据。未经授权,禁止任何单位或个人以商业售卖、虚假宣传、侵权传播等非学习研究目的使用本文内容。如需分享或转载,请保留原文来源信息,不得篡改、删减内容或侵犯相关权益。感谢您的理解与支持!