# 组合式 API ::: warning 注意 - 暂不支持 ` ``` ### 示例 @example 示例 [详情]() ::: preview ::: ## 单文件组件中方法兼容性 @single-file-component-script-methods ### defineProps() 仅支持数组字面量、对象字面量定义(等同于 `options` 中的 `props`规则)及使用纯类型参数的方式来声明。 #### 示例 [详情]() ::: preview ::: ### defineEmits() 仅支持数组字面量和纯类型参数的方式来声明。 ```ts // 数组字面量 const emit = defineEmits(['change']) // 纯类型参数 const emit = defineEmits<{ (e : 'change', id : number) : void }>() const emit = defineEmits<{ // 具名元组语法 change : [id: number] }>() ``` #### 示例 [详情]() ::: preview ::: ### defineOptions() 仅支持对象字面量方式定义。 ```ts defineOptions({ data() { return { count: 0, price: 10, total: 0 } }, computed: { doubleCount() : number { return this.count * 2 }, }, watch: { count() { this.total = this.price * this.count }, }, methods: { increment() { this.count++ } } }) ``` #### 示例 [详情]() ::: preview ::: ### defineExpose() 使用 `