ref有两种用法:

1、ref 加在html上,用this.$refs.ref值 => 获取到的是dom元素

2、ref 加在子组件上,用this.$refs.ref值 => 获取到的是组件实例,可以使用组

件的所有方法。在使用方法的时候直接this.$refs.ref值.方法() 就可以

使用了。

注意:

ref 需要在dom渲染完成后才会有,在使用的时候确保dom已经渲染完成。

举例说明:

  1. <div id="app">
  2. <h1 ref="hello">这是H1</h1> // 普通DOM元素
  3. <hello ref="ho" /> // 组件
  4. <button @click="getref">获取H1元素</button>
  5. </div>
  6. methods: {
  7. getref() {
  8. // 表示从 $refs对象 中, 获取 ref 属性值为: hello DOM元素或组件
  9. console.log(this.$refs.hello.innerText);
  10. this.$refs.hello.style.color = 'red'; // 修改html样式
  11. console.log(this.$refs.ho.msg); // 获取组件数据
  12. console.log(this.$refs.ho.test); // 获取组件的方法
  13. }

二: 举报类型的封装

说明::: 它是硬编码的,就是固定写死在视图中的,后期就会不好维护,这个时候就可以单独封装成一个常量数组

举例说明: 可以创建一个constant (常量) 文件夹

  1. // 以模块的方式导出 举报文章 时,后端接口约定的举报类型 根据接口文档
  2. const reports = [
  3. {
  4. value: 0,
  5. label: '其它问题'
  6. },
  7. {
  8. value: 1,
  9. label: '标题夸张'
  10. },
  11. {
  12. value: 2,
  13. label: '低俗色情'
  14. }
  15. 省略更多...
  16. ]
  17. export default reports