欢迎您 本站地址:  

Vue3 内置属性

在 Vue.js 中,is、key 和 ref 是三个常用的内置属性,用法如下。

is 属性

在 Vue.js 中,is 属性通常用于动态组件的实现,特别是当你希望在运行时动态地切换不同的组件时非常有用。

实例

<template>
  <div>
    <component :is="currentComponent"></component>
    <button @click="toggleComponent">Toggle Component</button>
  </div>
</template>

<script>
import FirstComponent from './FirstComponent.vue';
import SecondComponent from './SecondComponent.vue';

export default {
  data() {
    return {
      currentComponent: 'FirstComponent'
    };
  },
  components: {
    FirstComponent,
    SecondComponent
  },
  methods: {
    toggleComponent() {
      this.currentComponent = this.currentComponent === 'FirstComponent' ? 'SecondComponent' : 'FirstComponent';
    }
  }
};
</script>

以上代码中,currentComponent 是一个数据属性,它决定了 <component> 元素要渲染的具体组件。当点击按钮时,调用 toggleComponent 方法会切换 currentComponent 的值,从而动态改变渲染的组件。

注意事项:


key 属性


ref 属性

给 DOM 元素添加 ref

实例

<template>
  <div>
    <input type="text" ref="inputField">
  </div>
</template>

<script>
export default {
  mounted() {
    console.log(this.$refs.inputField); // 访问 DOM 元素
    this.$refs.inputField.focus(); // 调用 DOM 元素方法
  }
}
</script>

给子组件添加 ref

实例

<template>
  <div>
    <child-component ref="childRef"></child-component>
  </div>
</template>

<script>
import ChildComponent from './ChildComponent.vue';

export default {
  components: {
    ChildComponent
  },
  mounted() {
    console.log(this.$refs.childRef); // 访问子组件实例
    this.$refs.childRef.doSomething(); // 调用子组件方法
  }
}
</script>

注意事项:

小库提示

扫描下方二维码,访问手机版。