Sfoglia il codice sorgente

NativeObject

name@put:{..}
Xwite 3 anni fa
parent
commit
cce88f005e

+ 1 - 1
app/src/main/assets/updateLog.md

@@ -18,7 +18,7 @@
 * 修复bug
 * 修复bug
 * 详情页下拉刷新
 * 详情页下拉刷新
 * 导出为本地文件时不保留vip标识
 * 导出为本地文件时不保留vip标识
-* 列表结果为NativeObject时支持{{}}规则
+* 列表结果为NativeObject时支持{{}}@get@put规则
 ```
 ```
 {bookId: 1}
 {bookId: 1}
 https://www.example.com/book/{{result.bookId}}
 https://www.example.com/book/{{result.bookId}}

+ 4 - 2
app/src/main/java/io/legado/app/model/analyzeRule/AnalyzeRule.kt

@@ -145,8 +145,9 @@ class AnalyzeRule(
             if (result is NativeObject) {
             if (result is NativeObject) {
                 val sourceRule = ruleList.first()
                 val sourceRule = ruleList.first()
                 result = if (sourceRule.getParamSize() > 1) {
                 result = if (sourceRule.getParamSize() > 1) {
+                    putRule(sourceRule.putMap)
                     sourceRule.makeUpRule(result)
                     sourceRule.makeUpRule(result)
-                    sourceRule.rule
+                    result[sourceRule.rule]?.toString() ?: sourceRule.rule
                 } else {
                 } else {
                     result[sourceRule.rule]?.toString()
                     result[sourceRule.rule]?.toString()
                 }
                 }
@@ -227,8 +228,9 @@ class AnalyzeRule(
             if (result is NativeObject) {
             if (result is NativeObject) {
                 val sourceRule = ruleList.first()
                 val sourceRule = ruleList.first()
                 result = if (sourceRule.getParamSize() > 1) {
                 result = if (sourceRule.getParamSize() > 1) {
+                    putRule(sourceRule.putMap)
                     sourceRule.makeUpRule(result)
                     sourceRule.makeUpRule(result)
-                    sourceRule.rule
+                    result[sourceRule.rule]?.toString() ?: sourceRule.rule
                 } else {
                 } else {
                     result[sourceRule.rule]?.toString()
                     result[sourceRule.rule]?.toString()
                 }
                 }