Vue3 自定义组件,setup 详细写法,组件名称怎么指定,组件属性怎么设置
                 发布时间: 
                 2024-04-06 
                 预览次数: 
                  
            
            在 Vue 3 中,使用 setup 函数创建自定义组件,可以通过返回的属性和方法将数据暴露给模板。下面是一个示例,展示了如何在 Vue 3 中使用 setup 函数创建自定义组件,并设置组件名称和属性:
<template>
  <div>
    <p>{ {message } }</p>
    <button @click="reverseMessage">Reverse Message</button>
  </div>
</template>
<script>
import { ref } from 'vue';
export default {
  // 设置组件名称
  name: 'MyComponent',
  // 在 setup 函数中创建组件
  setup(props) {
    // 初始化数据
    const message = ref('Hello, world!');
    // 定义方法
    function reverseMessage() {
      message.value = message.value.split('').reverse().join('');
    }
    // 返回要在模板中使用的数据和方法
    return {
      message,
      reverseMessage
    };
  }
};
</script>在这个示例中:
我们通过在组件对象中添加
name属性来设置组件名称为'MyComponent'。使用
setup函数来创建组件。setup函数的第一个参数是props,用于接收父组件传递的属性。在这个示例中,我们没有使用props参数。我们使用
ref创建了一个名为message的响应式数据,并初始化为'Hello, world!'。定义了一个名为
reverseMessage的函数,用于反转message的字符串。最后,在
setup函数中返回了message和reverseMessage,以便在模板中使用。
要设置组件属性,你可以在组件标签上使用属性来传递数据。例如:
<template>
  <div>
    <p>{ { message } }</p>
    <button @click="reverseMessage">Reverse Message</button>
  </div>
</template>
<script>
import { ref } from 'vue';
export default {
  name: 'MyComponent',
  props: {
    // 定义组件属性
    propValue: {
      type: String,
      required: true
    }
  },
  setup(props) {
    const message = ref(props.propValue);
    function reverseMessage() {
      message.value = message.value.split('').reverse().join('');
    }
    return {
      message,
      reverseMessage
    };
  }
};
</script>在这个示例中,我们定义了一个名为 propValue 的组件属性,并指定它的类型为字符串,并且设置为必需的。然后,在 setup 函数中,我们使用 props.propValue 初始化了 message 的值。在使用组件时,你可以像这样传递属性:
<MyComponent propValue="Hello, world!" />
这样,propValue 的值就会被传递给自定义组件,并在组件内部使用。
                 上一篇: 
                 VUE自定义控件值改变,父控件跟着变