From e40f5578322d7ecbcd45e70debef9c67184d837d Mon Sep 17 00:00:00 2001
From: Tevin <tingquanren@163.com>
Date: Wed, 22 Nov 2023 10:57:27 +0800
Subject: [PATCH] 增强业务基类能力,可以转嫁整个继承链

---
 bases/Pilot.js |   10 ++++++++--
 1 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/bases/Pilot.js b/bases/Pilot.js
index f5208f8..d4cad33 100644
--- a/bases/Pilot.js
+++ b/bases/Pilot.js
@@ -21,10 +21,16 @@
             methods: {},
         };
         const names = [];
+        let parent = null;
         // 实例本身的字段
         Object.getOwnPropertyNames(this).forEach(name => names.push(name));
-        // 类的字段
-        Object.getOwnPropertyNames(Object.getPrototypeOf(this)).forEach(name => names.push(name));
+        // 基类的字段,直到Pilot为止(不含Pilot)
+        parent = Object.getPrototypeOf(this);
+        while (parent instanceof Pilot) {
+            Object.getOwnPropertyNames(parent).forEach(name => names.push(name));
+            parent = Object.getPrototypeOf(parent);
+            console.log(JSON.stringify(names));
+        }
         // 传递
         names.forEach(name => {
             // 构造器忽略,如果存在属性 $methods 也忽略

--
Gitblit v1.9.1