vue:this.$createElement方法

element ui中的slider的marks属性中使用到this.$createElement方法设置标记样式:
vue:this.$createElement方法_第1张图片
上面虽然只用到两个参数,实际上,此方法有三个参数:
①第一个参数为标签,即创建的节点元素的标签是什么
②第二个参数是属性配置,如class、style等
③第三个参数是节点元素的内容

this.$createElement方法的写法:

const h = this.$createElement;
this.$info({
     title: 'This is a notification message',
     content: h('div', {}, [
         h('p', 'some messages...some messages...'),
         h('p', 'some messages...some messages...'),
     ]),
     onOk() {},
});

生成的对话框如下:
vue:this.$createElement方法_第2张图片
使用第二个参数进行属性配置,例如以下代码:

h('div', { class: 'test' }, [
  h('p', 'some messages...some messages...'),
  h('p', 'some messages...some messages...')
])

生成的是:
在这里插入图片描述
可以看出,dom元素上多了class属性
再试试以下代码:

h('div', 
  {
    style: {
      color: 'green'
    }
  }, [
    h('p', 'some messages...some messages...'),
    h('p', 'some messages...some messages...')
])

生成的对话框的字体就会变成绿色:
vue:this.$createElement方法_第3张图片

你可能感兴趣的:(vue,css,vue)