vue createElement中怎麽綁定v-if

1.想要使用vue的createElement生成一个template中包含v-if?
2.想要生成的dom

  // 上方一個Spin
   <Spin
      size="large"
      fix
      v-if="spinShow"
    >
    </Spin>
    // 下方一個iframe
    <iframe
      id="factoryViewIframes"
      :src="selectedTreeNode.svgAddress"
      width="100%"
      height="100%"
      frameborder="no"
      border="0"
      marginwidth="0"
      seamless
      marginheight="0"
      scrolling="yes"
      allowtransparency="yes"
    />
  1. 現在想要createElement生成上方的html结构,下面的v-if应该怎么实现??????
     var pureComponent = $Vue.component("pure-component", {
                    data() {
                        return {
                            showSpin: true
                        }
                    },
                    render: function (createElement) {
                        var self = this;
                        return createElement("div", {}, [createElement("iframe", {
                            attrs: {
                                id: "customMenuIframe",
                                src: svgUrl,
                                frameborder: 0,
                                seamless: true
                            },
                            style: {
                                width: "100%",
                                height: "100%",
                                minHeight: '848px'
                            }
                        }), createElement('Spin', {
                            props: {
                                size: 'large',
                                fix: true,
                                'v-if': self.spinShow // 这个v-if怎么生成?????????
                            }
                        })]);
                    },
阅读 5.2k
2 个回答

基础的 js 都不会写了吗。。

createElement(
  "div", 
  {},
  [
   createElement("iframe"),
   self.spinShow ? createElement('Spin') : null
  ]
)
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题