From cea7d1c682ea46f8b39efa9e9eb581374a316d1f Mon Sep 17 00:00:00 2001
From: wuxw7 <wuxw7@asiainfo.com>
Date: 星期五, 22 三月 2019 08:51:57 +0800
Subject: [PATCH] 尝试合并每个组件代码

---
 WebService/src/main/java/com/java110/web/core/VueComponentElement.java |   20 +++++++++++++++++---
 1 files changed, 17 insertions(+), 3 deletions(-)

diff --git a/WebService/src/main/java/com/java110/web/core/VueComponentElement.java b/WebService/src/main/java/com/java110/web/core/VueComponentElement.java
index 6b26d2e..bc9adf7 100644
--- a/WebService/src/main/java/com/java110/web/core/VueComponentElement.java
+++ b/WebService/src/main/java/com/java110/web/core/VueComponentElement.java
@@ -1,9 +1,15 @@
 package com.java110.web.core;
 
+import com.alibaba.fastjson.JSONObject;
+import com.java110.web.smo.impl.LoginServiceSMOImpl;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.thymeleaf.Arguments;
 import org.thymeleaf.dom.*;
 import org.thymeleaf.processor.element.AbstractMarkupSubstitutionElementProcessor;
+import org.thymeleaf.util.DOMUtils;
 
+import java.io.StringReader;
 import java.util.ArrayList;
 import java.util.List;
 
@@ -13,12 +19,17 @@
  */
 public class VueComponentElement extends AbstractMarkupSubstitutionElementProcessor {
 
+    private final static Logger logger = LoggerFactory.getLogger(VueComponentElement.class);
+
+
     protected VueComponentElement(String elementName) {
         super(elementName);
     }
 
     @Override
     protected List<Node> getMarkupSubstitutes(Arguments arguments, Element element) {
+
+        //logger.debug("arg:{},element:{}", JSONObject.toJSONString(arguments),element.getAttributeValue("name"));
         List<Node> nodes = new ArrayList<>();
         //鑾峰彇妯℃澘鍚嶇О
         String componentName = element.getAttributeValue("name");
@@ -26,8 +37,10 @@
         if(html == null){
             throw new RuntimeException("鍦ㄧ紦瀛樹腑鏈壘鍒扮粍浠躲��"+componentName+"銆�");
         }
-        Node nodeHtml = new Macro(html);
-        nodes.add(nodeHtml);
+        List<Node> tmpNodes = DOMUtils.getHtml5DOMFor(new StringReader(html)).getChildren();
+        for(Node tmpNode : tmpNodes) {
+            nodes.add(tmpNode);
+        }
         //css
         String css = VueComponentTemplate.findTemplateByComponentCode(componentName+"."+VueComponentTemplate.COMPONENT_CSS);
         if(css != null){
@@ -36,7 +49,7 @@
             nodes.add(nodeCss);
         }
 
-        //css
+        //js
         String js = VueComponentTemplate.findTemplateByComponentCode(componentName+"."+VueComponentTemplate.COMPONENT_JS);
         if(js != null){
             js = "<script type=\"text/javascript\">" + js +"</script>";
@@ -44,6 +57,7 @@
             nodes.add(nodeJs);
         }
 
+
         return nodes;
     }
 

--
Gitblit v1.8.0