From 38034ab0aed163edb44a2523205be738e9ec5d7d Mon Sep 17 00:00:00 2001
From: 吴学文 <wuxuewen@wuxuewendeMacBook-Pro.local>
Date: 星期二, 26 三月 2019 00:02:07 +0800
Subject: [PATCH] 完成自封装vc-validate 功能

---
 WebService/src/main/java/com/java110/web/core/VueComponentElement.java |   15 ++++++++++-----
 1 files changed, 10 insertions(+), 5 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 4a1450e..1e520e6 100644
--- a/WebService/src/main/java/com/java110/web/core/VueComponentElement.java
+++ b/WebService/src/main/java/com/java110/web/core/VueComponentElement.java
@@ -7,7 +7,9 @@
 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;
 
@@ -31,13 +33,16 @@
         List<Node> nodes = new ArrayList<>();
         //鑾峰彇妯℃澘鍚嶇О
         String componentName = element.getAttributeValue("name");
+        logger.debug("姝e湪瑙f瀽缁勪欢{}",componentName);
         String html = VueComponentTemplate.findTemplateByComponentCode(componentName+"."+VueComponentTemplate.COMPONENT_HTML);
         if(html == null){
             throw new RuntimeException("鍦ㄧ紦瀛樹腑鏈壘鍒扮粍浠躲��"+componentName+"銆�");
         }
-        Node nodeHtml = new Macro(html);
-
-        nodes.add(nodeHtml);
+        //List<Node> tmpNodes = DOMUtils.getHtml5DOMFor(new StringReader(html)).getChildren();
+        List<Node> tmpNodes = DOMUtils.getLegacyHTML5DOMFor(new StringReader(html)).getChildren();
+        for(Node tmpNode : tmpNodes) {
+            nodes.add(tmpNode);
+        }
         //css
         String css = VueComponentTemplate.findTemplateByComponentCode(componentName+"."+VueComponentTemplate.COMPONENT_CSS);
         if(css != null){
@@ -46,10 +51,10 @@
             nodes.add(nodeCss);
         }
 
-        //css
+        //js
         String js = VueComponentTemplate.findTemplateByComponentCode(componentName+"."+VueComponentTemplate.COMPONENT_JS);
         if(js != null){
-            js = "<script type=\"text/javascript\">" + js +"</script>";
+            js = "<script type=\"text/javascript\">//<![CDATA[ \n" + js +"//]]>\n</script>";
             Node nodeJs = new Macro(js);
             nodes.add(nodeJs);
         }

--
Gitblit v1.8.0