@10yun/cv-mobile-ui 0.5.19 → 0.5.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (69) hide show
  1. package/other/mpvue-picker/mpvuePicker.vue +402 -0
  2. package/{uni-ui/lib → other}/mpvue-picker/style.css +0 -1
  3. package/{uni-ui/lib → other}/tab-nvue/style.css +0 -1
  4. package/other/uParse/components/style.css +1 -0
  5. package/other/uParse/components/wxParseAudio.vue +1 -0
  6. package/other/uParse/components/wxParseImg.vue +86 -0
  7. package/other/uParse/components/wxParseTable.vue +54 -0
  8. package/other/uParse/components/wxParseTemplate0.vue +98 -0
  9. package/other/uParse/components/wxParseTemplate1.vue +81 -0
  10. package/other/uParse/components/wxParseTemplate10.vue +81 -0
  11. package/other/uParse/components/wxParseTemplate11.vue +79 -0
  12. package/other/uParse/components/wxParseTemplate2.vue +81 -0
  13. package/other/uParse/components/wxParseTemplate3.vue +81 -0
  14. package/other/uParse/components/wxParseTemplate4.vue +81 -0
  15. package/other/uParse/components/wxParseTemplate5.vue +81 -0
  16. package/other/uParse/components/wxParseTemplate6.vue +81 -0
  17. package/other/uParse/components/wxParseTemplate7.vue +81 -0
  18. package/other/uParse/components/wxParseTemplate8.vue +81 -0
  19. package/other/uParse/components/wxParseTemplate9.vue +81 -0
  20. package/other/uParse/components/wxParseVideo.vue +14 -0
  21. package/other/uParse/editor.css +495 -0
  22. package/{uni-ui/lib/uParse/src → other/uParse}/libs/html2json.js +19 -22
  23. package/{uni-ui/lib/uParse/src → other/uParse}/libs/htmlparser.js +12 -5
  24. package/{uni-ui/lib/uParse/src → other/uParse}/libs/wxDiscode.js +2 -2
  25. package/other/uParse/wxParse.vue +196 -0
  26. package/package.json +1 -1
  27. package/plugins/map/amqp-wx.js +173 -0
  28. package/{uni-ui/lib/mpvueGestureLock/index.vue → ui-cv/components/cv-draw-gesture-lock/cv-draw-gesture-lock.vue} +4 -1
  29. package/ui-cv/components/cv-draw-gesture-lock/gestureLock.js +169 -0
  30. package/{uni-ui/lib/mpvueGestureLock → ui-cv/components/cv-draw-gesture-lock}/style.css +0 -1
  31. package/{uni-ui/lib/mpvue-citypicker → ui-cv/components/cv-geo-region}/style.css +0 -1
  32. package/uni-ui/lib/amap-wx/js/util.js +0 -181
  33. package/uni-ui/lib/marked/index.js +0 -1
  34. package/uni-ui/lib/mpvue-citypicker/city-data/area.js +0 -12542
  35. package/uni-ui/lib/mpvue-citypicker/city-data/city.js +0 -1503
  36. package/uni-ui/lib/mpvue-citypicker/city-data/province.js +0 -139
  37. package/uni-ui/lib/mpvue-picker/mpvuePicker.vue +0 -3
  38. package/uni-ui/lib/mpvueGestureLock/gestureLock.js +0 -175
  39. package/uni-ui/lib/uParse/src/components/style.css +0 -2
  40. package/uni-ui/lib/uParse/src/components/wxParseAudio.vue +0 -1
  41. package/uni-ui/lib/uParse/src/components/wxParseImg.vue +0 -1
  42. package/uni-ui/lib/uParse/src/components/wxParseTable.vue +0 -3
  43. package/uni-ui/lib/uParse/src/components/wxParseTemplate0.vue +0 -1
  44. package/uni-ui/lib/uParse/src/components/wxParseTemplate1.vue +0 -1
  45. package/uni-ui/lib/uParse/src/components/wxParseTemplate10.vue +0 -1
  46. package/uni-ui/lib/uParse/src/components/wxParseTemplate11.vue +0 -1
  47. package/uni-ui/lib/uParse/src/components/wxParseTemplate2.vue +0 -1
  48. package/uni-ui/lib/uParse/src/components/wxParseTemplate3.vue +0 -1
  49. package/uni-ui/lib/uParse/src/components/wxParseTemplate4.vue +0 -1
  50. package/uni-ui/lib/uParse/src/components/wxParseTemplate5.vue +0 -1
  51. package/uni-ui/lib/uParse/src/components/wxParseTemplate6.vue +0 -1
  52. package/uni-ui/lib/uParse/src/components/wxParseTemplate7.vue +0 -1
  53. package/uni-ui/lib/uParse/src/components/wxParseTemplate8.vue +0 -1
  54. package/uni-ui/lib/uParse/src/components/wxParseTemplate9.vue +0 -1
  55. package/uni-ui/lib/uParse/src/components/wxParseVideo.vue +0 -1
  56. package/uni-ui/lib/uParse/src/editor.css +0 -495
  57. package/uni-ui/lib/uParse/src/wxParse.vue +0 -1
  58. /package/{uni-ui/lib → other}/api-set-tabbar.nvue +0 -0
  59. /package/{uni-ui/lib → other}/mpvue-echarts/src/echarts.vue +0 -0
  60. /package/{uni-ui/lib → other}/mpvue-echarts/src/style.css +0 -0
  61. /package/{uni-ui/lib → other}/mpvue-echarts/src/wx-canvas.js +0 -0
  62. /package/{uni-ui/lib → other}/product.vue +0 -0
  63. /package/{uni-ui/lib → other}/style.css +0 -0
  64. /package/{uni-ui/lib → other}/tab-nvue/mediaList.vue +0 -0
  65. /package/{uni-ui/lib → other}/u-charts/u-charts.js +0 -0
  66. /package/{uni-ui/lib/uParse/src → other/uParse}/wxParse.css +0 -0
  67. /package/{uni-ui/lib/amap-wx → plugins/map}/lib/amap-wx.js +0 -0
  68. /package/{uni-ui/lib/mpvue-citypicker → ui-cv/components/cv-geo-region}/mpvueCityPicker.vue +0 -0
  69. /package/{uni-ui/lib/marked → ui-cv/components/cv-markdown-show}/lib/marked.js +0 -0
@@ -0,0 +1,81 @@
1
+ <template>
2
+ <!--判断是否是标签节点-->
3
+ <block v-if="node.node == 'element'">
4
+ <!--button类型-->
5
+ <button v-if="node.tag == 'button'" type="default" size="mini" :class="node.classStr" :style="node.styleStr">
6
+ <wx-parse-template :node="node" />
7
+ </button>
8
+ <!--a类型-->
9
+ <view
10
+ v-else-if="node.tag == 'a'"
11
+ @click="wxParseATap(node.attr, $event)"
12
+ :class="node.classStr"
13
+ :data-href="node.attr.href"
14
+ :style="node.styleStr"
15
+ >
16
+ <block v-for="(node, index) of node.nodes" :key="index">
17
+ <wx-parse-template :node="node" />
18
+ </block>
19
+ </view>
20
+ <!--li类型-->
21
+ <view v-else-if="node.tag == 'li'" :class="node.classStr" :style="node.styleStr">
22
+ <block v-for="(node, index) of node.nodes" :key="index">
23
+ <wx-parse-template :node="node" />
24
+ </block>
25
+ </view>
26
+ <!--table类型-->
27
+ <wx-parse-table v-else-if="node.tag == 'table'" :class="node.classStr" :style="node.styleStr" :node="node" />
28
+ <!--br类型-->
29
+ <!-- #ifndef H5 -->
30
+ <text v-else-if="node.tag == 'br'">\n</text>
31
+ <!-- #endif -->
32
+ <!-- #ifdef H5 -->
33
+ <br v-else-if="node.tag == 'br'" />
34
+ <!-- #endif -->
35
+ <!--video类型-->
36
+ <wx-parse-video :node="node" v-else-if="node.tag == 'video'" />
37
+ <!--audio类型-->
38
+ <wx-parse-audio :node="node" v-else-if="node.tag == 'audio'" />
39
+ <!--img类型-->
40
+ <wx-parse-img :node="node" v-else-if="node.tag == 'img'" :style="node.styleStr" />
41
+ <!--其他标签-->
42
+ <view v-else :class="node.classStr" :style="node.styleStr">
43
+ <block v-for="(node, index) of node.nodes" :key="index">
44
+ <wx-parse-template :node="node" />
45
+ </block>
46
+ </view>
47
+ </block>
48
+ <!--判断是否是文本节点-->
49
+ <block v-else-if="node.node == 'text'">{{ node.text }}</block>
50
+ </template>
51
+ <script>
52
+ import wxParseTemplate from './wxParseTemplate2';
53
+ import wxParseImg from './wxParseImg';
54
+ import wxParseVideo from './wxParseVideo';
55
+ import wxParseAudio from './wxParseAudio';
56
+ import wxParseTable from './wxParseTable';
57
+ export default {
58
+ name: 'wxParseTemplate1',
59
+ props: {
60
+ node: {}
61
+ },
62
+ components: {
63
+ wxParseTemplate,
64
+ wxParseImg,
65
+ wxParseVideo,
66
+ wxParseAudio,
67
+ wxParseTable
68
+ },
69
+ methods: {
70
+ wxParseATap(attr, e) {
71
+ const { href } = e.currentTarget.dataset;
72
+ if (!href) return;
73
+ let parent = this.$parent;
74
+ while (!parent.preview || typeof parent.preview !== 'function') {
75
+ parent = parent.$parent;
76
+ }
77
+ parent.navigate(href, e, attr);
78
+ }
79
+ }
80
+ };
81
+ </script>
@@ -0,0 +1,81 @@
1
+ <template>
2
+ <!--判断是否是标签节点-->
3
+ <block v-if="node.node == 'element'">
4
+ <!--button类型-->
5
+ <button v-if="node.tag == 'button'" type="default" size="mini" :class="node.classStr" :style="node.styleStr">
6
+ <wx-parse-template :node="node" />
7
+ </button>
8
+ <!--a类型-->
9
+ <view
10
+ v-else-if="node.tag == 'a'"
11
+ @click="wxParseATap(node.attr, $event)"
12
+ :class="node.classStr"
13
+ :data-href="node.attr.href"
14
+ :style="node.styleStr"
15
+ >
16
+ <block v-for="(node, index) of node.nodes" :key="index">
17
+ <wx-parse-template :node="node" />
18
+ </block>
19
+ </view>
20
+ <!--li类型-->
21
+ <view v-else-if="node.tag == 'li'" :class="node.classStr" :style="node.styleStr">
22
+ <block v-for="(node, index) of node.nodes" :key="index">
23
+ <wx-parse-template :node="node" />
24
+ </block>
25
+ </view>
26
+ <!--table类型-->
27
+ <wx-parse-table v-else-if="node.tag == 'table'" :class="node.classStr" :style="node.styleStr" :node="node" />
28
+ <!--br类型-->
29
+ <!-- #ifndef H5 -->
30
+ <text v-else-if="node.tag == 'br'">\n</text>
31
+ <!-- #endif -->
32
+ <!-- #ifdef H5 -->
33
+ <br v-else-if="node.tag == 'br'" />
34
+ <!-- #endif -->
35
+ <!--video类型-->
36
+ <wx-parse-video :node="node" v-else-if="node.tag == 'video'" />
37
+ <!--audio类型-->
38
+ <wx-parse-audio :node="node" v-else-if="node.tag == 'audio'" />
39
+ <!--img类型-->
40
+ <wx-parse-img :node="node" v-else-if="node.tag == 'img'" :style="node.styleStr" />
41
+ <!--其他标签-->
42
+ <view v-else :class="node.classStr" :style="node.styleStr">
43
+ <block v-for="(node, index) of node.nodes" :key="index">
44
+ <wx-parse-template :node="node" />
45
+ </block>
46
+ </view>
47
+ </block>
48
+ <!--判断是否是文本节点-->
49
+ <block v-else-if="node.node == 'text'">{{ node.text }}</block>
50
+ </template>
51
+ <script>
52
+ import wxParseTemplate from './wxParseTemplate11';
53
+ import wxParseImg from './wxParseImg';
54
+ import wxParseVideo from './wxParseVideo';
55
+ import wxParseAudio from './wxParseAudio';
56
+ import wxParseTable from './wxParseTable';
57
+ export default {
58
+ name: 'wxParseTemplate10',
59
+ props: {
60
+ node: {}
61
+ },
62
+ components: {
63
+ wxParseTemplate,
64
+ wxParseImg,
65
+ wxParseVideo,
66
+ wxParseAudio,
67
+ wxParseTable
68
+ },
69
+ methods: {
70
+ wxParseATap(attr, e) {
71
+ const { href } = e.currentTarget.dataset;
72
+ if (!href) return;
73
+ let parent = this.$parent;
74
+ while (!parent.preview || typeof parent.preview !== 'function') {
75
+ parent = parent.$parent;
76
+ }
77
+ parent.navigate(href, e, attr);
78
+ }
79
+ }
80
+ };
81
+ </script>
@@ -0,0 +1,79 @@
1
+ <template>
2
+ <!--判断是否是标签节点-->
3
+ <block v-if="node.node == 'element'">
4
+ <!--button类型-->
5
+ <button v-if="node.tag == 'button'" type="default" size="mini" :class="node.classStr" :style="node.styleStr">
6
+ <rich-text :nodes="node" :class="node.classStr" :style="'user-select:' + parseSelect"></rich-text>
7
+ </button>
8
+ <!--a类型-->
9
+ <view
10
+ v-else-if="node.tag == 'a'"
11
+ @click="wxParseATap(node.attr, $event)"
12
+ :class="node.classStr"
13
+ :data-href="node.attr.href"
14
+ :style="node.styleStr"
15
+ >
16
+ <block v-for="(node, index) of node.nodes" :key="index">
17
+ <rich-text :nodes="node" :class="node.classStr" :style="'user-select:' + parseSelect"></rich-text>
18
+ </block>
19
+ </view>
20
+ <!--li类型-->
21
+ <view v-else-if="node.tag == 'li'" :class="node.classStr" :style="node.styleStr">
22
+ <block v-for="(node, index) of node.nodes" :key="index">
23
+ <rich-text :nodes="node" :class="node.classStr" :style="'user-select:' + parseSelect"></rich-text>
24
+ </block>
25
+ </view>
26
+ <!--table类型-->
27
+ <wx-parse-table v-else-if="node.tag == 'table'" :class="node.classStr" :style="node.styleStr" :node="node" />
28
+ <!--br类型-->
29
+ <!-- #ifndef H5 -->
30
+ <text v-else-if="node.tag == 'br'">\n</text>
31
+ <!-- #endif -->
32
+ <!-- #ifdef H5 -->
33
+ <br v-else-if="node.tag == 'br'" />
34
+ <!-- #endif -->
35
+ <!--video类型-->
36
+ <wx-parse-video :node="node" v-else-if="node.tag == 'video'" />
37
+ <!--audio类型-->
38
+ <wx-parse-audio :node="node" v-else-if="node.tag == 'audio'" />
39
+ <!--img类型-->
40
+ <wx-parse-img :node="node" v-else-if="node.tag == 'img'" />
41
+ <!--其他标签-->
42
+ <view v-else :class="node.classStr" :style="node.styleStr">
43
+ <block v-for="(node, index) of node.nodes" :key="index">
44
+ <rich-text :nodes="node" :class="node.classStr" :style="'user-select:' + parseSelect"></rich-text>
45
+ </block>
46
+ </view>
47
+ </block>
48
+ <!--判断是否是文本节点-->
49
+ <block v-else-if="node.node == 'text'">{{ node.text }}</block>
50
+ </template>
51
+ <script>
52
+ import wxParseImg from './wxParseImg';
53
+ import wxParseVideo from './wxParseVideo';
54
+ import wxParseAudio from './wxParseAudio';
55
+ import wxParseTable from './wxParseTable';
56
+ export default {
57
+ name: 'wxParseTemplate11',
58
+ props: {
59
+ node: {}
60
+ },
61
+ components: {
62
+ wxParseImg,
63
+ wxParseVideo,
64
+ wxParseAudio,
65
+ wxParseTable
66
+ },
67
+ methods: {
68
+ wxParseATap(attr, e) {
69
+ const { href } = e.currentTarget.dataset;
70
+ if (!href) return;
71
+ let parent = this.$parent;
72
+ while (!parent.preview || typeof parent.preview !== 'function') {
73
+ parent = parent.$parent;
74
+ }
75
+ parent.navigate(href, e, attr);
76
+ }
77
+ }
78
+ };
79
+ </script>
@@ -0,0 +1,81 @@
1
+ <template>
2
+ <!--判断是否是标签节点-->
3
+ <block v-if="node.node == 'element'">
4
+ <!--button类型-->
5
+ <button v-if="node.tag == 'button'" type="default" size="mini" :class="node.classStr" :style="node.styleStr">
6
+ <wx-parse-template :node="node" />
7
+ </button>
8
+ <!--a类型-->
9
+ <view
10
+ v-else-if="node.tag == 'a'"
11
+ @click="wxParseATap(node.attr, $event)"
12
+ :class="node.classStr"
13
+ :data-href="node.attr.href"
14
+ :style="node.styleStr"
15
+ >
16
+ <block v-for="(node, index) of node.nodes" :key="index">
17
+ <wx-parse-template :node="node" />
18
+ </block>
19
+ </view>
20
+ <!--li类型-->
21
+ <view v-else-if="node.tag == 'li'" :class="node.classStr" :style="node.styleStr">
22
+ <block v-for="(node, index) of node.nodes" :key="index">
23
+ <wx-parse-template :node="node" />
24
+ </block>
25
+ </view>
26
+ <!--table类型-->
27
+ <wx-parse-table v-else-if="node.tag == 'table'" :class="node.classStr" :style="node.styleStr" :node="node" />
28
+ <!--br类型-->
29
+ <!-- #ifndef H5 -->
30
+ <text v-else-if="node.tag == 'br'">\n</text>
31
+ <!-- #endif -->
32
+ <!-- #ifdef H5 -->
33
+ <br v-else-if="node.tag == 'br'" />
34
+ <!-- #endif -->
35
+ <!--video类型-->
36
+ <wx-parse-video :node="node" v-else-if="node.tag == 'video'" />
37
+ <!--audio类型-->
38
+ <wx-parse-audio :node="node" v-else-if="node.tag == 'audio'" />
39
+ <!--img类型-->
40
+ <wx-parse-img :node="node" v-else-if="node.tag == 'img'" :style="node.styleStr" />
41
+ <!--其他标签-->
42
+ <view v-else :class="node.classStr" :style="node.styleStr">
43
+ <block v-for="(node, index) of node.nodes" :key="index">
44
+ <wx-parse-template :node="node" />
45
+ </block>
46
+ </view>
47
+ </block>
48
+ <!--判断是否是文本节点-->
49
+ <block v-else-if="node.node == 'text'">{{ node.text }}</block>
50
+ </template>
51
+ <script>
52
+ import wxParseTemplate from './wxParseTemplate3';
53
+ import wxParseImg from './wxParseImg';
54
+ import wxParseVideo from './wxParseVideo';
55
+ import wxParseAudio from './wxParseAudio';
56
+ import wxParseTable from './wxParseTable';
57
+ export default {
58
+ name: 'wxParseTemplate2',
59
+ props: {
60
+ node: {}
61
+ },
62
+ components: {
63
+ wxParseTemplate,
64
+ wxParseImg,
65
+ wxParseVideo,
66
+ wxParseAudio,
67
+ wxParseTable
68
+ },
69
+ methods: {
70
+ wxParseATap(attr, e) {
71
+ const { href } = e.currentTarget.dataset;
72
+ if (!href) return;
73
+ let parent = this.$parent;
74
+ while (!parent.preview || typeof parent.preview !== 'function') {
75
+ parent = parent.$parent;
76
+ }
77
+ parent.navigate(href, e, attr);
78
+ }
79
+ }
80
+ };
81
+ </script>
@@ -0,0 +1,81 @@
1
+ <template>
2
+ <!--判断是否是标签节点-->
3
+ <block v-if="node.node == 'element'">
4
+ <!--button类型-->
5
+ <button v-if="node.tag == 'button'" type="default" size="mini" :class="node.classStr" :style="node.styleStr">
6
+ <wx-parse-template :node="node" />
7
+ </button>
8
+ <!--a类型-->
9
+ <view
10
+ v-else-if="node.tag == 'a'"
11
+ @click="wxParseATap(node.attr, $event)"
12
+ :class="node.classStr"
13
+ :data-href="node.attr.href"
14
+ :style="node.styleStr"
15
+ >
16
+ <block v-for="(node, index) of node.nodes" :key="index">
17
+ <wx-parse-template :node="node" />
18
+ </block>
19
+ </view>
20
+ <!--li类型-->
21
+ <view v-else-if="node.tag == 'li'" :class="node.classStr" :style="node.styleStr">
22
+ <block v-for="(node, index) of node.nodes" :key="index">
23
+ <wx-parse-template :node="node" />
24
+ </block>
25
+ </view>
26
+ <!--table类型-->
27
+ <wx-parse-table v-else-if="node.tag == 'table'" :class="node.classStr" :style="node.styleStr" :node="node" />
28
+ <!--br类型-->
29
+ <!-- #ifndef H5 -->
30
+ <text v-else-if="node.tag == 'br'">\n</text>
31
+ <!-- #endif -->
32
+ <!-- #ifdef H5 -->
33
+ <br v-else-if="node.tag == 'br'" />
34
+ <!-- #endif -->
35
+ <!--video类型-->
36
+ <wx-parse-video :node="node" v-else-if="node.tag == 'video'" />
37
+ <!--audio类型-->
38
+ <wx-parse-audio :node="node" v-else-if="node.tag == 'audio'" />
39
+ <!--img类型-->
40
+ <wx-parse-img :node="node" v-else-if="node.tag == 'img'" :style="node.styleStr" />
41
+ <!--其他标签-->
42
+ <view v-else :class="node.classStr" :style="node.styleStr">
43
+ <block v-for="(node, index) of node.nodes" :key="index">
44
+ <wx-parse-template :node="node" />
45
+ </block>
46
+ </view>
47
+ </block>
48
+ <!--判断是否是文本节点-->
49
+ <block v-else-if="node.node == 'text'">{{ node.text }}</block>
50
+ </template>
51
+ <script>
52
+ import wxParseTemplate from './wxParseTemplate4';
53
+ import wxParseImg from './wxParseImg';
54
+ import wxParseVideo from './wxParseVideo';
55
+ import wxParseAudio from './wxParseAudio';
56
+ import wxParseTable from './wxParseTable';
57
+ export default {
58
+ name: 'wxParseTemplate3',
59
+ props: {
60
+ node: {}
61
+ },
62
+ components: {
63
+ wxParseTemplate,
64
+ wxParseImg,
65
+ wxParseVideo,
66
+ wxParseAudio,
67
+ wxParseTable
68
+ },
69
+ methods: {
70
+ wxParseATap(attr, e) {
71
+ const { href } = e.currentTarget.dataset;
72
+ if (!href) return;
73
+ let parent = this.$parent;
74
+ while (!parent.preview || typeof parent.preview !== 'function') {
75
+ parent = parent.$parent;
76
+ }
77
+ parent.navigate(href, e, attr);
78
+ }
79
+ }
80
+ };
81
+ </script>
@@ -0,0 +1,81 @@
1
+ <template>
2
+ <!--判断是否是标签节点-->
3
+ <block v-if="node.node == 'element'">
4
+ <!--button类型-->
5
+ <button v-if="node.tag == 'button'" type="default" size="mini" :class="node.classStr" :style="node.styleStr">
6
+ <wx-parse-template :node="node" />
7
+ </button>
8
+ <!--a类型-->
9
+ <view
10
+ v-else-if="node.tag == 'a'"
11
+ @click="wxParseATap(node.attr, $event)"
12
+ :class="node.classStr"
13
+ :data-href="node.attr.href"
14
+ :style="node.styleStr"
15
+ >
16
+ <block v-for="(node, index) of node.nodes" :key="index">
17
+ <wx-parse-template :node="node" />
18
+ </block>
19
+ </view>
20
+ <!--li类型-->
21
+ <view v-else-if="node.tag == 'li'" :class="node.classStr" :style="node.styleStr">
22
+ <block v-for="(node, index) of node.nodes" :key="index">
23
+ <wx-parse-template :node="node" />
24
+ </block>
25
+ </view>
26
+ <!--table类型-->
27
+ <wx-parse-table v-else-if="node.tag == 'table'" :class="node.classStr" :style="node.styleStr" :node="node" />
28
+ <!--br类型-->
29
+ <!-- #ifndef H5 -->
30
+ <text v-else-if="node.tag == 'br'">\n</text>
31
+ <!-- #endif -->
32
+ <!-- #ifdef H5 -->
33
+ <br v-else-if="node.tag == 'br'" />
34
+ <!-- #endif -->
35
+ <!--video类型-->
36
+ <wx-parse-video :node="node" v-else-if="node.tag == 'video'" />
37
+ <!--audio类型-->
38
+ <wx-parse-audio :node="node" v-else-if="node.tag == 'audio'" />
39
+ <!--img类型-->
40
+ <wx-parse-img :node="node" v-else-if="node.tag == 'img'" :style="node.styleStr" />
41
+ <!--其他标签-->
42
+ <view v-else :class="node.classStr" :style="node.styleStr">
43
+ <block v-for="(node, index) of node.nodes" :key="index">
44
+ <wx-parse-template :node="node" />
45
+ </block>
46
+ </view>
47
+ </block>
48
+ <!--判断是否是文本节点-->
49
+ <block v-else-if="node.node == 'text'">{{ node.text }}</block>
50
+ </template>
51
+ <script>
52
+ import wxParseTemplate from './wxParseTemplate5';
53
+ import wxParseImg from './wxParseImg';
54
+ import wxParseVideo from './wxParseVideo';
55
+ import wxParseAudio from './wxParseAudio';
56
+ import wxParseTable from './wxParseTable';
57
+ export default {
58
+ name: 'wxParseTemplate4',
59
+ props: {
60
+ node: {}
61
+ },
62
+ components: {
63
+ wxParseTemplate,
64
+ wxParseImg,
65
+ wxParseVideo,
66
+ wxParseAudio,
67
+ wxParseTable
68
+ },
69
+ methods: {
70
+ wxParseATap(attr, e) {
71
+ const { href } = e.currentTarget.dataset;
72
+ if (!href) return;
73
+ let parent = this.$parent;
74
+ while (!parent.preview || typeof parent.preview !== 'function') {
75
+ parent = parent.$parent;
76
+ }
77
+ parent.navigate(href, e, attr);
78
+ }
79
+ }
80
+ };
81
+ </script>
@@ -0,0 +1,81 @@
1
+ <template>
2
+ <!--判断是否是标签节点-->
3
+ <block v-if="node.node == 'element'">
4
+ <!--button类型-->
5
+ <button v-if="node.tag == 'button'" type="default" size="mini" :class="node.classStr" :style="node.styleStr">
6
+ <wx-parse-template :node="node" />
7
+ </button>
8
+ <!--a类型-->
9
+ <view
10
+ v-else-if="node.tag == 'a'"
11
+ @click="wxParseATap(node.attr, $event)"
12
+ :class="node.classStr"
13
+ :data-href="node.attr.href"
14
+ :style="node.styleStr"
15
+ >
16
+ <block v-for="(node, index) of node.nodes" :key="index">
17
+ <wx-parse-template :node="node" />
18
+ </block>
19
+ </view>
20
+ <!--li类型-->
21
+ <view v-else-if="node.tag == 'li'" :class="node.classStr" :style="node.styleStr">
22
+ <block v-for="(node, index) of node.nodes" :key="index">
23
+ <wx-parse-template :node="node" />
24
+ </block>
25
+ </view>
26
+ <!--table类型-->
27
+ <wx-parse-table v-else-if="node.tag == 'table'" :class="node.classStr" :style="node.styleStr" :node="node" />
28
+ <!--br类型-->
29
+ <!-- #ifndef H5 -->
30
+ <text v-else-if="node.tag == 'br'">\n</text>
31
+ <!-- #endif -->
32
+ <!-- #ifdef H5 -->
33
+ <br v-else-if="node.tag == 'br'" />
34
+ <!-- #endif -->
35
+ <!--video类型-->
36
+ <wx-parse-video :node="node" v-else-if="node.tag == 'video'" />
37
+ <!--audio类型-->
38
+ <wx-parse-audio :node="node" v-else-if="node.tag == 'audio'" />
39
+ <!--img类型-->
40
+ <wx-parse-img :node="node" v-else-if="node.tag == 'img'" :style="node.styleStr" />
41
+ <!--其他标签-->
42
+ <view v-else :class="node.classStr" :style="node.styleStr">
43
+ <block v-for="(node, index) of node.nodes" :key="index">
44
+ <wx-parse-template :node="node" />
45
+ </block>
46
+ </view>
47
+ </block>
48
+ <!--判断是否是文本节点-->
49
+ <block v-else-if="node.node == 'text'">{{ node.text }}</block>
50
+ </template>
51
+ <script>
52
+ import wxParseTemplate from './wxParseTemplate6';
53
+ import wxParseImg from './wxParseImg';
54
+ import wxParseVideo from './wxParseVideo';
55
+ import wxParseAudio from './wxParseAudio';
56
+ import wxParseTable from './wxParseTable';
57
+ export default {
58
+ name: 'wxParseTemplate5',
59
+ props: {
60
+ node: {}
61
+ },
62
+ components: {
63
+ wxParseTemplate,
64
+ wxParseImg,
65
+ wxParseVideo,
66
+ wxParseAudio,
67
+ wxParseTable
68
+ },
69
+ methods: {
70
+ wxParseATap(attr, e) {
71
+ const { href } = e.currentTarget.dataset;
72
+ if (!href) return;
73
+ let parent = this.$parent;
74
+ while (!parent.preview || typeof parent.preview !== 'function') {
75
+ parent = parent.$parent;
76
+ }
77
+ parent.navigate(href, e, attr);
78
+ }
79
+ }
80
+ };
81
+ </script>
@@ -0,0 +1,81 @@
1
+ <template>
2
+ <!--判断是否是标签节点-->
3
+ <block v-if="node.node == 'element'">
4
+ <!--button类型-->
5
+ <button v-if="node.tag == 'button'" type="default" size="mini" :class="node.classStr" :style="node.styleStr">
6
+ <wx-parse-template :node="node" />
7
+ </button>
8
+ <!--a类型-->
9
+ <view
10
+ v-else-if="node.tag == 'a'"
11
+ @click="wxParseATap(node.attr, $event)"
12
+ :class="node.classStr"
13
+ :data-href="node.attr.href"
14
+ :style="node.styleStr"
15
+ >
16
+ <block v-for="(node, index) of node.nodes" :key="index">
17
+ <wx-parse-template :node="node" />
18
+ </block>
19
+ </view>
20
+ <!--li类型-->
21
+ <view v-else-if="node.tag == 'li'" :class="node.classStr" :style="node.styleStr">
22
+ <block v-for="(node, index) of node.nodes" :key="index">
23
+ <wx-parse-template :node="node" />
24
+ </block>
25
+ </view>
26
+ <!--table类型-->
27
+ <wx-parse-table v-else-if="node.tag == 'table'" :class="node.classStr" :style="node.styleStr" :node="node" />
28
+ <!--br类型-->
29
+ <!-- #ifndef H5 -->
30
+ <text v-else-if="node.tag == 'br'">\n</text>
31
+ <!-- #endif -->
32
+ <!-- #ifdef H5 -->
33
+ <br v-else-if="node.tag == 'br'" />
34
+ <!-- #endif -->
35
+ <!--video类型-->
36
+ <wx-parse-video :node="node" v-else-if="node.tag == 'video'" />
37
+ <!--audio类型-->
38
+ <wx-parse-audio :node="node" v-else-if="node.tag == 'audio'" />
39
+ <!--img类型-->
40
+ <wx-parse-img :node="node" v-else-if="node.tag == 'img'" :style="node.styleStr" />
41
+ <!--其他标签-->
42
+ <view v-else :class="node.classStr" :style="node.styleStr">
43
+ <block v-for="(node, index) of node.nodes" :key="index">
44
+ <wx-parse-template :node="node" />
45
+ </block>
46
+ </view>
47
+ </block>
48
+ <!--判断是否是文本节点-->
49
+ <block v-else-if="node.node == 'text'">{{ node.text }}</block>
50
+ </template>
51
+ <script>
52
+ import wxParseTemplate from './wxParseTemplate7';
53
+ import wxParseImg from './wxParseImg';
54
+ import wxParseVideo from './wxParseVideo';
55
+ import wxParseAudio from './wxParseAudio';
56
+ import wxParseTable from './wxParseTable';
57
+ export default {
58
+ name: 'wxParseTemplate6',
59
+ props: {
60
+ node: {}
61
+ },
62
+ components: {
63
+ wxParseTemplate,
64
+ wxParseImg,
65
+ wxParseVideo,
66
+ wxParseAudio,
67
+ wxParseTable
68
+ },
69
+ methods: {
70
+ wxParseATap(attr, e) {
71
+ const { href } = e.currentTarget.dataset;
72
+ if (!href) return;
73
+ let parent = this.$parent;
74
+ while (!parent.preview || typeof parent.preview !== 'function') {
75
+ parent = parent.$parent;
76
+ }
77
+ parent.navigate(href, e, attr);
78
+ }
79
+ }
80
+ };
81
+ </script>