diff --git a/pages/composition-api/basic/define-emits/array-literal.uvue b/pages/composition-api/basic/define-emits/array-literal.uvue
new file mode 100644
index 0000000000000000000000000000000000000000..95037479cbfec5600bc021506efec571460fbfb7
--- /dev/null
+++ b/pages/composition-api/basic/define-emits/array-literal.uvue
@@ -0,0 +1,14 @@
+
+
+ array literal
+
+
+
+
+
\ No newline at end of file
diff --git a/pages/composition-api/basic/define-emits/define-emits.test.js b/pages/composition-api/basic/define-emits/define-emits.test.js
new file mode 100644
index 0000000000000000000000000000000000000000..8499c35f26ecda22bc18a7050d951dd197c0f123
--- /dev/null
+++ b/pages/composition-api/basic/define-emits/define-emits.test.js
@@ -0,0 +1,40 @@
+const PAGE_PATH = '/pages/composition-api/basic/define-emits/define-emits'
+
+describe('defineEmits', () => {
+ if (process.env.uniTestPlatformInfo.startsWith('android')) {
+ let page = null
+ beforeAll(async () => {
+ page = await program.reLaunch(PAGE_PATH)
+ await page.waitFor('view')
+ })
+ it('basic', async () => {
+ const handleArrayLiteralChangeRes = await page.$('#handle-array-literal-change-res')
+ expect(await handleArrayLiteralChangeRes.text()).toBe('handle array literal comp change result: ')
+
+ const arrayLiteralEmitBtn = await page.$('#array-literal-emit-btn')
+ await arrayLiteralEmitBtn.tap()
+
+ expect(await handleArrayLiteralChangeRes.text()).toBe('handle array literal comp change result: options is 1')
+
+ const handleTypeEmits1ChangeRes = await page.$('#handle-type-emits1-change-res')
+ expect(await handleTypeEmits1ChangeRes.text()).toBe('handle type emits comp change result: ')
+
+ const typeEmits1EmitBtn = await page.$('#type-emits1-emit-btn')
+ await typeEmits1EmitBtn.tap()
+
+ expect(await handleTypeEmits1ChangeRes.text()).toBe('handle type emits comp change result: options is 2')
+
+ const handleTypeEmits2ChangeRes = await page.$('#handle-type-emits2-change-res')
+ expect(await handleTypeEmits2ChangeRes.text()).toBe('handle type emits named tuple syntax comp change result: ')
+
+ const typeEmits2EmitBtn = await page.$('#type-emits2-emit-btn')
+ await typeEmits2EmitBtn.tap()
+
+ expect(await handleTypeEmits2ChangeRes.text()).toBe('handle type emits named tuple syntax comp change result: options is 3')
+ })
+ } else {
+ it('other platform', () => {
+ expect(1).toBe(1)
+ })
+ }
+})
\ No newline at end of file
diff --git a/pages/composition-api/basic/define-emits/define-emits.uvue b/pages/composition-api/basic/define-emits/define-emits.uvue
index add6cb80cddc8a12a71ff5ed57ecb0ba2734d6b3..4666760c2f905e6668030a1c6d44c1345a186825 100644
--- a/pages/composition-api/basic/define-emits/define-emits.uvue
+++ b/pages/composition-api/basic/define-emits/define-emits.uvue
@@ -1,5 +1,40 @@
- defineEmits
+
+
+
+
+
+ handle array literal comp change result:
+ {{handleArrayLiteralCompChangeRes}}
+
+ handle type emits comp change result:
+ {{handleTypeEmits1CompChangeRes}}
+
+ handle type emits named tuple syntax comp change
+ result: {{handleTypeEmits2CompChangeRes}}
+
+
+
+
-
+
\ No newline at end of file
diff --git a/pages/composition-api/basic/define-emits/type-emits-1.uvue b/pages/composition-api/basic/define-emits/type-emits-1.uvue
new file mode 100644
index 0000000000000000000000000000000000000000..651c6043cca609c75c925cc60359779121511996
--- /dev/null
+++ b/pages/composition-api/basic/define-emits/type-emits-1.uvue
@@ -0,0 +1,16 @@
+
+
+ type emits
+
+
+
+
+
\ No newline at end of file
diff --git a/pages/composition-api/basic/define-emits/type-emits-2.uvue b/pages/composition-api/basic/define-emits/type-emits-2.uvue
new file mode 100644
index 0000000000000000000000000000000000000000..4f3589f1ef5753e1448fcf3c0833765e09a527e3
--- /dev/null
+++ b/pages/composition-api/basic/define-emits/type-emits-2.uvue
@@ -0,0 +1,17 @@
+
+
+ type emits named tuple syntax
+
+
+
+
+
\ No newline at end of file
diff --git a/pages/tab-bar/composition-api.uvue b/pages/tab-bar/composition-api.uvue
index 5757268b0504b390d108b0cd5f701d4c753b47b0..e3dbe93f42e1b287fda51bbbe3bb1a9218a34b8f 100644
--- a/pages/tab-bar/composition-api.uvue
+++ b/pages/tab-bar/composition-api.uvue
@@ -50,7 +50,7 @@
{
name: 'defineEmits',
url: 'define-emits',
- enable: false,
+ enable: true,
},
{
name: 'defineExpose',