code: function queryMap(path, styleMap = {}) {
      let localPath = [...path]
      let totalRef = styleMap
      let ans = []
      let key = localPath.pop();
      let clz = (key.clz || '').trim()
      //whether descendant-clz
      clz = splitClzIfNeed(clz)
      //tag info
      let tag = key.tag
      //prior setting tag info,so we calculate for clz latter will override this result
      if (totalRef[tag]) {
          generateStyle(totalRef[tag], ans)
          let tagRef = styleMap[tag]
          //tag chain in style object
          generateCommon(localPath, tagRef, ans)
      }
      /*
          descendant clz,we search path from root element to self
          e.g. clz array may[.a,.b],which means element with .b is descendant for element with .a
          so search from .a
       */
      if (Array.isArray(clz)) {
          for (let ind in clz) {
              const innerClz = clz[ind]
              if (totalRef.hasOwnProperty(innerClz)) {
                  generateStyle(totalRef[innerClz], ans)
                  let clzRef = totalRef[innerClz]
                  generateCommon(localPath, clzRef, ans)
              }
          }
          /*
              just pure className such as .a
           */
      } else if (totalRef.hasOwnProperty(clz)) {
          generateStyle(totalRef[clz], ans)
          let clzRef = totalRef[clz]
          generateCommon(localPath, clzRef, ans)
      }
  
      return ans
  }
docs: search target style content in style object according to path info
  @param path we record clz,tag info from root element to self,organized as array.
  each element organized as {clz:'clz_a',tag:'tag_a'}
  @param styleMap we use style object to save css file info,this object,save same suffix rule in one chain
  for example, .a .b and .a .c may share .a ascendant in 2 chain,organized as below
  .b - .a
  .c /
  
  @returns {Array}