ssfg 4 years ago
commit
05a3d6af1d
100 changed files with 714 additions and 0 deletions
  1. 11 0
      app.js
  2. 111 0
      app.json
  3. 2 0
      app.wxss
  4. BIN
      images/banner1.png
  5. BIN
      images/bar1.png
  6. BIN
      images/bar10.png
  7. BIN
      images/bar2.png
  8. BIN
      images/bar3.png
  9. BIN
      images/bar3bj.png
  10. BIN
      images/bar4.png
  11. BIN
      images/bar5.png
  12. BIN
      images/bar6.png
  13. BIN
      images/bar7.png
  14. BIN
      images/bar8.png
  15. BIN
      images/bar9.png
  16. BIN
      images/bj00.jpg
  17. BIN
      images/bj1.png
  18. BIN
      images/circle.png
  19. BIN
      images/demo.png
  20. BIN
      images/doc.png
  21. BIN
      images/fl1.png
  22. BIN
      images/fl2.png
  23. BIN
      images/fl3.png
  24. BIN
      images/fl4.png
  25. BIN
      images/girl.png
  26. BIN
      images/hello.png
  27. BIN
      images/ic1.png
  28. BIN
      images/ic2.png
  29. BIN
      images/img1.png
  30. BIN
      images/img2.png
  31. BIN
      images/img3.png
  32. BIN
      images/ktvip.jpg
  33. BIN
      images/logo.png
  34. BIN
      images/logobj.png
  35. BIN
      images/mb.png
  36. BIN
      images/mz/1.png
  37. BIN
      images/mz/2.png
  38. BIN
      images/mz/3.png
  39. BIN
      images/mz/4.png
  40. BIN
      images/mz/5.png
  41. BIN
      images/mz/6.png
  42. BIN
      images/mz/7.png
  43. BIN
      images/mz/8.png
  44. BIN
      images/mz/finish.png
  45. BIN
      images/mz/unfinish.png
  46. BIN
      images/numbj.png
  47. BIN
      images/p1.png
  48. BIN
      images/p2.png
  49. BIN
      images/p3.png
  50. BIN
      images/part1.jpg
  51. BIN
      images/part2.jpg
  52. BIN
      images/paybj.png
  53. BIN
      images/pdf.png
  54. BIN
      images/quanicon.png
  55. BIN
      images/quliaojie.png
  56. BIN
      images/qy.jpg
  57. BIN
      images/ren.png
  58. BIN
      images/titleimg.png
  59. BIN
      images/tongji.jpg
  60. BIN
      images/topbj.png
  61. BIN
      images/upload.png
  62. BIN
      images/upload1.png
  63. BIN
      images/vip1.png
  64. BIN
      images/zhaopian1.png
  65. 1 0
      miniprogram_npm/vant-weapp/button/index.d.ts
  66. 79 0
      miniprogram_npm/vant-weapp/button/index.js
  67. 7 0
      miniprogram_npm/vant-weapp/button/index.json
  68. 68 0
      miniprogram_npm/vant-weapp/button/index.wxml
  69. 1 0
      miniprogram_npm/vant-weapp/button/index.wxss
  70. 1 0
      miniprogram_npm/vant-weapp/cell-group/index.d.ts
  71. 10 0
      miniprogram_npm/vant-weapp/cell-group/index.js
  72. 3 0
      miniprogram_npm/vant-weapp/cell-group/index.json
  73. 9 0
      miniprogram_npm/vant-weapp/cell-group/index.wxml
  74. 1 0
      miniprogram_npm/vant-weapp/cell-group/index.wxss
  75. 1 0
      miniprogram_npm/vant-weapp/cell/index.d.ts
  76. 37 0
      miniprogram_npm/vant-weapp/cell/index.js
  77. 6 0
      miniprogram_npm/vant-weapp/cell/index.json
  78. 45 0
      miniprogram_npm/vant-weapp/cell/index.wxml
  79. 1 0
      miniprogram_npm/vant-weapp/cell/index.wxss
  80. 1 0
      miniprogram_npm/vant-weapp/checkbox-group/index.d.ts
  81. 35 0
      miniprogram_npm/vant-weapp/checkbox-group/index.js
  82. 3 0
      miniprogram_npm/vant-weapp/checkbox-group/index.json
  83. 1 0
      miniprogram_npm/vant-weapp/checkbox-group/index.wxml
  84. 1 0
      miniprogram_npm/vant-weapp/checkbox-group/index.wxss
  85. 1 0
      miniprogram_npm/vant-weapp/checkbox/index.d.ts
  86. 74 0
      miniprogram_npm/vant-weapp/checkbox/index.js
  87. 6 0
      miniprogram_npm/vant-weapp/checkbox/index.json
  88. 20 0
      miniprogram_npm/vant-weapp/checkbox/index.wxml
  89. 20 0
      miniprogram_npm/vant-weapp/checkbox/index.wxs
  90. 1 0
      miniprogram_npm/vant-weapp/checkbox/index.wxss
  91. 1 0
      miniprogram_npm/vant-weapp/col/index.d.ts
  92. 26 0
      miniprogram_npm/vant-weapp/col/index.js
  93. 3 0
      miniprogram_npm/vant-weapp/col/index.json
  94. 8 0
      miniprogram_npm/vant-weapp/col/index.wxml
  95. 1 0
      miniprogram_npm/vant-weapp/col/index.wxss
  96. 7 0
      miniprogram_npm/vant-weapp/common/color.d.ts
  97. 7 0
      miniprogram_npm/vant-weapp/common/color.js
  98. 3 0
      miniprogram_npm/vant-weapp/common/component.d.ts
  99. 101 0
      miniprogram_npm/vant-weapp/common/component.js
  100. 0 0
      miniprogram_npm/vant-weapp/common/index.wxss

+ 11 - 0
app.js

@@ -0,0 +1,11 @@
+//app.js
+App({
+  onLaunch: function () {
+  },
+  onShow: function () {
+
+  },
+
+  globalData: {
+  }
+})

+ 111 - 0
app.json

@@ -0,0 +1,111 @@
+{
+  "pages": [
+    "pages/collectInfo/collectInfo",
+    "pages/login/login",
+    "pages/Inteldocking/Inteldocking",
+    "pages/chooseTag/chooseTag",
+    "pages/identityTag/identityTag",
+    "pages/index/index",
+    "pages/personInformation/personInformation",
+    "pages/chat/chat",
+    "pages/checkApproval/checkApproval",
+    "pages/myContract/myContract",
+    "pages/myNeeds/myNeeds",
+    "pages/improveResults/improveResults",
+    "pages/openVipPay/openVipPay",
+    "pages/MyAchievements/MyAchievements",
+    "pages/payvipSuccess/payvipSuccess",
+    "pages/openVip/openVip",
+    "pages/person/person",
+    "pages/paySuccess/paySuccess",
+    "pages/pay/pay",
+    "pages/expertConsultationDetails/expertConsultationDetails",
+    "pages/expertConsultation/expertConsultation",
+    "pages/ServiceCenter/ServiceCenter",
+    "pages/applicationForm/applicationForm",
+    "pages/ServiceCenterDetails/ServiceCenterDetails",
+    "pages/docking/docking",
+    "pages/resultsCenter/resultsCenter",
+    "pages/policyNews/policyNews",
+    "pages/writeInformation/writeInformation",
+    "pages/registrationForm/registrationForm",
+    "pages/requireClassification/requireClassification",
+    "pages/requirement/requirement",
+    "pages/IntelligentDocking/IntelligentDocking"
+    
+  ],
+  "window": {
+    "backgroundTextStyle": "light",
+    "navigationBarBackgroundColor": "#fff",
+    "navigationBarTextStyle": "black",
+    "navigationBarTitleText": "自定义导航栏"
+  },
+  "usingComponents": {
+    "van-button": "/miniprogram_npm/vant-weapp/button/index",
+    "van-divider": "/miniprogram_npm/vant-weapp/divider/index",
+    "van-row": "/miniprogram_npm/vant-weapp/row/index",
+    "van-col": "/miniprogram_npm/vant-weapp/col/index",
+    "van-datetime-picker": "/miniprogram_npm/vant-weapp/datetime-picker/index",
+    "van-picker": "/miniprogram_npm/vant-weapp/picker/index",
+    "van-popup": "/miniprogram_npm/vant-weapp/popup/index",
+    "van-radio": "/miniprogram_npm/vant-weapp/radio/index",
+    "van-radio-group": "/miniprogram_npm/vant-weapp/radio-group/index",
+    "van-tab": "/miniprogram_npm/vant-weapp/tab/index",
+    "van-tabs": "/miniprogram_npm/vant-weapp/tabs/index",
+    "van-checkbox": "/miniprogram_npm/vant-weapp/checkbox/index",
+    "van-checkbox-group": "/miniprogram_npm/vant-weapp/checkbox-group/index",
+    "van-icon": "/miniprogram_npm/vant-weapp/icon/index",
+    "van-nav-bar": "/miniprogram_npm/vant-weapp/nav-bar/index",
+    "van-tabbar": "/miniprogram_npm/vant-weapp/tabbar/index",
+    "van-tabbar-item": "/miniprogram_npm/vant-weapp/tabbar-item/index",
+    "van-image": "/miniprogram_npm/vant-weapp/image/index",
+    "van-grid": "/miniprogram_npm/vant-weapp/grid/index",
+    "van-grid-item": "/miniprogram_npm/vant-weapp/grid-item/index",
+    "van-notice-bar": "/miniprogram_npm/vant-weapp/notice-bar/index",
+    "van-search": "/miniprogram_npm/vant-weapp/search/index",
+    "van-tag": "/miniprogram_npm/vant-weapp/tag/index",
+    "van-cell": "/miniprogram_npm/vant-weapp/cell/index",
+    "van-cell-group": "/miniprogram_npm/vant-weapp/cell-group/index",
+    "van-field":"/miniprogram_npm/vant-weapp/field/index",
+    "van-steps":"/miniprogram_npm/vant-weapp/steps/index"
+  },
+  "tabBar": {
+    "color": "#c5ced8",
+    "selectedColor": "#000000",
+    "borderStyle": "black",
+    "list": [
+      {
+        "pagePath": "pages/index/index",
+        "text": "首页",
+        "selectedIconPath": "./images/bar1.png",
+        "iconPath": "./images/bar2.png"
+      },
+      {
+        "pagePath": "pages/resultsCenter/resultsCenter",
+        "text": "成果中心",
+        "selectedIconPath": "./images/bar3.png",
+        "iconPath": "./images/bar4.png"
+      },
+      {
+        "pagePath": "pages/IntelligentDocking/IntelligentDocking",
+        "text": "智能对接",
+        "selectedIconPath": "./images/bar5.png",
+        "iconPath": "./images/bar6.png"
+      },
+      {
+        "pagePath": "pages/ServiceCenter/ServiceCenter",
+        "text": "服务中心",
+        "selectedIconPath": "./images/bar7.png",
+        "iconPath": "./images/bar8.png"
+      },
+      {
+        "pagePath": "pages/person/person",
+        "text": "个人中心",
+        "selectedIconPath": "./images/bar9.png",
+        "iconPath": "./images/bar10.png"
+      }
+    ]
+  },
+  "style": "v2",
+  "sitemapLocation": "sitemap.json"
+}

+ 2 - 0
app.wxss

@@ -0,0 +1,2 @@
+
+

BIN
images/banner1.png


BIN
images/bar1.png


BIN
images/bar10.png


BIN
images/bar2.png


BIN
images/bar3.png


BIN
images/bar3bj.png


BIN
images/bar4.png


BIN
images/bar5.png


BIN
images/bar6.png


BIN
images/bar7.png


BIN
images/bar8.png


BIN
images/bar9.png


BIN
images/bj00.jpg


BIN
images/bj1.png


BIN
images/circle.png


BIN
images/demo.png


BIN
images/doc.png


BIN
images/fl1.png


BIN
images/fl2.png


BIN
images/fl3.png


BIN
images/fl4.png


BIN
images/girl.png


BIN
images/hello.png


BIN
images/ic1.png


BIN
images/ic2.png


BIN
images/img1.png


BIN
images/img2.png


BIN
images/img3.png


BIN
images/ktvip.jpg


BIN
images/logo.png


BIN
images/logobj.png


BIN
images/mb.png


BIN
images/mz/1.png


BIN
images/mz/2.png


BIN
images/mz/3.png


BIN
images/mz/4.png


BIN
images/mz/5.png


BIN
images/mz/6.png


BIN
images/mz/7.png


BIN
images/mz/8.png


BIN
images/mz/finish.png


BIN
images/mz/unfinish.png


BIN
images/numbj.png


BIN
images/p1.png


BIN
images/p2.png


BIN
images/p3.png


BIN
images/part1.jpg


BIN
images/part2.jpg


BIN
images/paybj.png


BIN
images/pdf.png


BIN
images/quanicon.png


BIN
images/quliaojie.png


BIN
images/qy.jpg


BIN
images/ren.png


BIN
images/titleimg.png


BIN
images/tongji.jpg


BIN
images/topbj.png


BIN
images/upload.png


BIN
images/upload1.png


BIN
images/vip1.png


BIN
images/zhaopian1.png


+ 1 - 0
miniprogram_npm/vant-weapp/button/index.d.ts

@@ -0,0 +1 @@
+export {};

+ 79 - 0
miniprogram_npm/vant-weapp/button/index.js

@@ -0,0 +1,79 @@
+import { VantComponent } from '../common/component';
+import { button } from '../mixins/button';
+import { openType } from '../mixins/open-type';
+import { canIUseFormFieldButton } from '../common/version';
+const mixins = [button, openType];
+if (canIUseFormFieldButton()) {
+  mixins.push('wx://form-field-button');
+}
+VantComponent({
+  mixins,
+  classes: ['hover-class', 'loading-class'],
+  data: {
+    baseStyle: '',
+  },
+  props: {
+    formType: String,
+    icon: String,
+    classPrefix: {
+      type: String,
+      value: 'van-icon',
+    },
+    plain: Boolean,
+    block: Boolean,
+    round: Boolean,
+    square: Boolean,
+    loading: Boolean,
+    hairline: Boolean,
+    disabled: Boolean,
+    loadingText: String,
+    customStyle: String,
+    loadingType: {
+      type: String,
+      value: 'circular',
+    },
+    type: {
+      type: String,
+      value: 'default',
+    },
+    dataset: null,
+    size: {
+      type: String,
+      value: 'normal',
+    },
+    loadingSize: {
+      type: String,
+      value: '20px',
+    },
+    color: {
+      type: String,
+      observer(color) {
+        let style = '';
+        if (color) {
+          style += `color: ${this.data.plain ? color : 'white'};`;
+          if (!this.data.plain) {
+            // Use background instead of backgroundColor to make linear-gradient work
+            style += `background: ${color};`;
+          }
+          // hide border when color is linear-gradient
+          if (color.indexOf('gradient') !== -1) {
+            style += 'border: 0;';
+          } else {
+            style += `border-color: ${color};`;
+          }
+        }
+        if (style !== this.data.baseStyle) {
+          this.setData({ baseStyle: style });
+        }
+      },
+    },
+  },
+  methods: {
+    onClick() {
+      if (!this.data.loading) {
+        this.$emit('click');
+      }
+    },
+    noop() {},
+  },
+});

+ 7 - 0
miniprogram_npm/vant-weapp/button/index.json

@@ -0,0 +1,7 @@
+{
+  "component": true,
+  "usingComponents": {
+    "van-icon": "../icon/index",
+    "van-loading": "../loading/index"
+  }
+}

+ 68 - 0
miniprogram_npm/vant-weapp/button/index.wxml

@@ -0,0 +1,68 @@
+<wxs src="../wxs/utils.wxs" module="utils" />
+
+<button
+  id="{{ id }}"
+  data-detail="{{ dataset }}"
+  class="custom-class {{ utils.bem('button', [type, size, { block, round, plain, square, loading, disabled, hairline, unclickable: disabled || loading }]) }} {{ hairline ? 'van-hairline--surround' : '' }}"
+  hover-class="van-button--active hover-class"
+  lang="{{ lang }}"
+  form-type="{{ formType }}"
+  style="{{ baseStyle }} {{ customStyle }}"
+  open-type="{{ disabled ? '' : openType }}"
+  business-id="{{ businessId }}"
+  session-from="{{ sessionFrom }}"
+  send-message-title="{{ sendMessageTitle }}"
+  send-message-path="{{ sendMessagePath }}"
+  send-message-img="{{ sendMessageImg }}"
+  show-message-card="{{ showMessageCard }}"
+  app-parameter="{{ appParameter }}"
+  aria-label="{{ ariaLabel }}"
+  bindtap="{{ !disabled ? 'onClick' : 'noop' }}"
+  bindgetuserinfo="bindGetUserInfo"
+  bindcontact="bindContact"
+  bindgetphonenumber="bindGetPhoneNumber"
+  binderror="bindError"
+  bindlaunchapp="bindLaunchApp"
+  bindopensetting="bindOpenSetting"
+>
+  <block wx:if="{{ loading }}">
+    <van-loading
+      custom-class="loading-class"
+      size="{{ loadingSize }}"
+      type="{{ loadingType }}"
+      color="{{ loadingColor(type,color,plain) }}"
+    />
+    <view wx:if="{{ loadingText }}" class="van-button__loading-text">
+      {{ loadingText }}
+    </view>
+  </block>
+  <block wx:else>
+    <van-icon
+      wx:if="{{ icon }}"
+      size="1.2em"
+      name="{{ icon }}"
+      class-prefix="{{ classPrefix }}"
+      class="van-button__icon"
+      custom-style="line-height: inherit;"
+    />
+    <view class="van-button__text">
+      <slot />
+    </view>
+  </block>
+</button>
+
+
+<wxs module="loadingColor">
+function get(type, color,plain) {
+  if(plain) {
+    return color ? color: '#c9c9c9';
+  }
+
+  if(type === 'default') {
+    return '#c9c9c9';
+  }
+  return 'white';
+}
+
+module.exports = get;
+</wxs>

File diff suppressed because it is too large
+ 1 - 0
miniprogram_npm/vant-weapp/button/index.wxss


+ 1 - 0
miniprogram_npm/vant-weapp/cell-group/index.d.ts

@@ -0,0 +1 @@
+export {};

+ 10 - 0
miniprogram_npm/vant-weapp/cell-group/index.js

@@ -0,0 +1,10 @@
+import { VantComponent } from '../common/component';
+VantComponent({
+  props: {
+    title: String,
+    border: {
+      type: Boolean,
+      value: true,
+    },
+  },
+});

+ 3 - 0
miniprogram_npm/vant-weapp/cell-group/index.json

@@ -0,0 +1,3 @@
+{
+  "component": true
+}

+ 9 - 0
miniprogram_npm/vant-weapp/cell-group/index.wxml

@@ -0,0 +1,9 @@
+<view
+  wx:if="{{ title }}"
+  class="van-cell-group__title"
+>
+  {{ title }}
+</view>
+<view class="custom-class van-cell-group {{ border ? 'van-hairline--top-bottom' : '' }}">
+  <slot />
+</view>

+ 1 - 0
miniprogram_npm/vant-weapp/cell-group/index.wxss

@@ -0,0 +1 @@
+@import '../common/index.wxss';.van-cell-group__title{padding:16px 16px 8px;padding:var(--cell-group-title-padding,16px 16px 8px);font-size:14px;font-size:var(--cell-group-title-font-size,14px);line-height:16px;line-height:var(--cell-group-title-line-height,16px);color:#969799;color:var(--cell-group-title-color,#969799)}

+ 1 - 0
miniprogram_npm/vant-weapp/cell/index.d.ts

@@ -0,0 +1 @@
+export {};

+ 37 - 0
miniprogram_npm/vant-weapp/cell/index.js

@@ -0,0 +1,37 @@
+import { link } from '../mixins/link';
+import { VantComponent } from '../common/component';
+VantComponent({
+  classes: [
+    'title-class',
+    'label-class',
+    'value-class',
+    'right-icon-class',
+    'hover-class',
+  ],
+  mixins: [link],
+  props: {
+    title: null,
+    value: null,
+    icon: String,
+    size: String,
+    label: String,
+    center: Boolean,
+    isLink: Boolean,
+    required: Boolean,
+    clickable: Boolean,
+    titleWidth: String,
+    customStyle: String,
+    arrowDirection: String,
+    useLabelSlot: Boolean,
+    border: {
+      type: Boolean,
+      value: true,
+    },
+  },
+  methods: {
+    onClick(event) {
+      this.$emit('click', event.detail);
+      this.jumpLink();
+    },
+  },
+});

+ 6 - 0
miniprogram_npm/vant-weapp/cell/index.json

@@ -0,0 +1,6 @@
+{
+  "component": true,
+  "usingComponents": {
+    "van-icon": "../icon/index"
+  }
+}

+ 45 - 0
miniprogram_npm/vant-weapp/cell/index.wxml

@@ -0,0 +1,45 @@
+<wxs src="../wxs/utils.wxs" module="utils" />
+
+<view
+  class="custom-class {{ utils.bem('cell', [size, { center, required, borderless: !border, clickable: isLink || clickable }]) }}"
+  hover-class="van-cell--hover hover-class"
+  hover-stay-time="70"
+  style="{{ customStyle }}"
+  bind:tap="onClick"
+>
+  <van-icon
+    wx:if="{{ icon }}"
+    name="{{ icon }}"
+    class="van-cell__left-icon-wrap"
+    custom-class="van-cell__left-icon"
+  />
+  <slot wx:else name="icon" />
+
+  <view
+    style="{{ titleWidth ? 'max-width:' + titleWidth + ';min-width:' + titleWidth : '' }}"
+    class="van-cell__title title-class"
+  >
+    <block wx:if="{{ title }}">{{ title }}</block>
+    <slot wx:else name="title" />
+
+    <view wx:if="{{ label || useLabelSlot }}" class="van-cell__label label-class">
+      <slot wx:if="{{ useLabelSlot }}" name="label" />
+      <block wx:elif="{{ label }}">{{ label }}</block>
+    </view>
+  </view>
+
+  <view class="van-cell__value value-class">
+    <block wx:if="{{ value || value === 0 }}">{{ value }}</block>
+    <slot wx:else />
+  </view>
+
+  <van-icon
+    wx:if="{{ isLink }}"
+    name="{{ arrowDirection ? 'arrow' + '-' + arrowDirection : 'arrow' }}"
+    class="van-cell__right-icon-wrap right-icon-class"
+    custom-class="van-cell__right-icon"
+  />
+  <slot wx:else name="right-icon" />
+
+  <slot name="extra" />
+</view>

File diff suppressed because it is too large
+ 1 - 0
miniprogram_npm/vant-weapp/cell/index.wxss


+ 1 - 0
miniprogram_npm/vant-weapp/checkbox-group/index.d.ts

@@ -0,0 +1 @@
+export {};

+ 35 - 0
miniprogram_npm/vant-weapp/checkbox-group/index.js

@@ -0,0 +1,35 @@
+import { VantComponent } from '../common/component';
+VantComponent({
+  field: true,
+  relation: {
+    name: 'checkbox',
+    type: 'descendant',
+    current: 'checkbox-group',
+    linked(target) {
+      this.updateChild(target);
+    },
+  },
+  props: {
+    max: Number,
+    value: {
+      type: Array,
+      observer: 'updateChildren',
+    },
+    disabled: {
+      type: Boolean,
+      observer: 'updateChildren',
+    },
+  },
+  methods: {
+    updateChildren() {
+      (this.children || []).forEach((child) => this.updateChild(child));
+    },
+    updateChild(child) {
+      const { value, disabled } = this.data;
+      child.setData({
+        value: value.indexOf(child.data.name) !== -1,
+        parentDisabled: disabled,
+      });
+    },
+  },
+});

+ 3 - 0
miniprogram_npm/vant-weapp/checkbox-group/index.json

@@ -0,0 +1,3 @@
+{
+  "component": true
+}

+ 1 - 0
miniprogram_npm/vant-weapp/checkbox-group/index.wxml

@@ -0,0 +1 @@
+<slot />

+ 1 - 0
miniprogram_npm/vant-weapp/checkbox-group/index.wxss

@@ -0,0 +1 @@
+@import '../common/index.wxss';

+ 1 - 0
miniprogram_npm/vant-weapp/checkbox/index.d.ts

@@ -0,0 +1 @@
+export {};

+ 74 - 0
miniprogram_npm/vant-weapp/checkbox/index.js

@@ -0,0 +1,74 @@
+import { VantComponent } from '../common/component';
+function emit(target, value) {
+  target.$emit('input', value);
+  target.$emit('change', value);
+}
+VantComponent({
+  field: true,
+  relation: {
+    name: 'checkbox-group',
+    type: 'ancestor',
+    current: 'checkbox',
+  },
+  classes: ['icon-class', 'label-class'],
+  props: {
+    value: Boolean,
+    disabled: Boolean,
+    useIconSlot: Boolean,
+    checkedColor: String,
+    labelPosition: String,
+    labelDisabled: Boolean,
+    shape: {
+      type: String,
+      value: 'round',
+    },
+    iconSize: {
+      type: null,
+      value: 20,
+    },
+  },
+  data: {
+    parentDisabled: false,
+  },
+  methods: {
+    emitChange(value) {
+      if (this.parent) {
+        this.setParentValue(this.parent, value);
+      } else {
+        emit(this, value);
+      }
+    },
+    toggle() {
+      const { parentDisabled, disabled, value } = this.data;
+      if (!disabled && !parentDisabled) {
+        this.emitChange(!value);
+      }
+    },
+    onClickLabel() {
+      const { labelDisabled, parentDisabled, disabled, value } = this.data;
+      if (!disabled && !labelDisabled && !parentDisabled) {
+        this.emitChange(!value);
+      }
+    },
+    setParentValue(parent, value) {
+      const parentValue = parent.data.value.slice();
+      const { name } = this.data;
+      const { max } = parent.data;
+      if (value) {
+        if (max && parentValue.length >= max) {
+          return;
+        }
+        if (parentValue.indexOf(name) === -1) {
+          parentValue.push(name);
+          emit(parent, parentValue);
+        }
+      } else {
+        const index = parentValue.indexOf(name);
+        if (index !== -1) {
+          parentValue.splice(index, 1);
+          emit(parent, parentValue);
+        }
+      }
+    },
+  },
+});

+ 6 - 0
miniprogram_npm/vant-weapp/checkbox/index.json

@@ -0,0 +1,6 @@
+{
+  "component": true,
+  "usingComponents": {
+    "van-icon": "../icon/index"
+  }
+}

+ 20 - 0
miniprogram_npm/vant-weapp/checkbox/index.wxml

@@ -0,0 +1,20 @@
+<wxs src="../wxs/utils.wxs" module="utils" />
+<wxs src="./index.wxs" module="computed" />
+
+<view class="van-checkbox custom-class">
+  <view class="van-checkbox__icon-wrap" bindtap="toggle">
+    <slot wx:if="{{ useIconSlot }}" name="icon" />
+    <van-icon
+      wx:else
+      name="success"
+      size="0.8em"
+      class="{{ utils.bem('checkbox__icon', [shape, { disabled: disabled || parentDisabled, checked: value }]) }}"
+      style="{{ computed.iconStyle(checkedColor, value, disabled, parentDisabled, iconSize) }}"
+      custom-class="icon-class"
+      custom-style="line-height: 1.25em;"
+    />
+  </view>
+  <view class="label-class {{ utils.bem('checkbox__label', [labelPosition, { disabled: disabled || parentDisabled }]) }}" bindtap="onClickLabel">
+    <slot />
+  </view>
+</view>

+ 20 - 0
miniprogram_npm/vant-weapp/checkbox/index.wxs

@@ -0,0 +1,20 @@
+/* eslint-disable */
+var utils = require('../wxs/utils.wxs');
+
+function iconStyle(checkedColor, value, disabled, parentDisabled, iconSize) {
+  var styles = [['font-size', utils.addUnit(iconSize)]];
+  if (checkedColor && value && !disabled && !parentDisabled) {
+    styles.push(['border-color', checkedColor]);
+    styles.push(['background-color', checkedColor]);
+  }
+
+  return styles
+    .map(function(item) {
+      return item.join(':');
+    })
+    .join(';');
+}
+
+module.exports = {
+  iconStyle: iconStyle
+};

File diff suppressed because it is too large
+ 1 - 0
miniprogram_npm/vant-weapp/checkbox/index.wxss


+ 1 - 0
miniprogram_npm/vant-weapp/col/index.d.ts

@@ -0,0 +1 @@
+export {};

+ 26 - 0
miniprogram_npm/vant-weapp/col/index.js

@@ -0,0 +1,26 @@
+import { VantComponent } from '../common/component';
+VantComponent({
+  relation: {
+    name: 'row',
+    type: 'ancestor',
+    current: 'col',
+  },
+  props: {
+    span: Number,
+    offset: Number,
+  },
+  data: {
+    viewStyle: '',
+  },
+  methods: {
+    setGutter(gutter) {
+      const padding = `${gutter / 2}px`;
+      const viewStyle = gutter
+        ? `padding-left: ${padding}; padding-right: ${padding};`
+        : '';
+      if (viewStyle !== this.data.viewStyle) {
+        this.setData({ viewStyle });
+      }
+    },
+  },
+});

+ 3 - 0
miniprogram_npm/vant-weapp/col/index.json

@@ -0,0 +1,3 @@
+{
+  "component": true
+}

+ 8 - 0
miniprogram_npm/vant-weapp/col/index.wxml

@@ -0,0 +1,8 @@
+<wxs src="../wxs/utils.wxs" module="utils" />
+
+<view
+  class="custom-class {{ utils.bem('col', [span]) }} {{ offset ? 'van-col--offset-' + offset : '' }}"
+  style="{{ viewStyle }}"
+>
+  <slot />
+</view>

File diff suppressed because it is too large
+ 1 - 0
miniprogram_npm/vant-weapp/col/index.wxss


+ 7 - 0
miniprogram_npm/vant-weapp/common/color.d.ts

@@ -0,0 +1,7 @@
+export declare const RED = "#ee0a24";
+export declare const BLUE = "#1989fa";
+export declare const WHITE = "#fff";
+export declare const GREEN = "#07c160";
+export declare const ORANGE = "#ff976a";
+export declare const GRAY = "#323233";
+export declare const GRAY_DARK = "#969799";

+ 7 - 0
miniprogram_npm/vant-weapp/common/color.js

@@ -0,0 +1,7 @@
+export const RED = '#ee0a24';
+export const BLUE = '#1989fa';
+export const WHITE = '#fff';
+export const GREEN = '#07c160';
+export const ORANGE = '#ff976a';
+export const GRAY = '#323233';
+export const GRAY_DARK = '#969799';

+ 3 - 0
miniprogram_npm/vant-weapp/common/component.d.ts

@@ -0,0 +1,3 @@
+import { VantComponentOptions, CombinedComponentInstance } from '../definitions/index';
+declare function VantComponent<Data, Props, Methods>(vantOptions?: VantComponentOptions<Data, Props, Methods, CombinedComponentInstance<Data, Props, Methods>>): void;
+export { VantComponent };

+ 101 - 0
miniprogram_npm/vant-weapp/common/component.js

@@ -0,0 +1,101 @@
+import { basic } from '../mixins/basic';
+const relationFunctions = {
+  ancestor: {
+    linked(parent) {
+      this.parent = parent;
+    },
+    unlinked() {
+      this.parent = null;
+    },
+  },
+  descendant: {
+    linked(child) {
+      this.children = this.children || [];
+      this.children.push(child);
+    },
+    unlinked(child) {
+      this.children = (this.children || []).filter((it) => it !== child);
+    },
+  },
+};
+function mapKeys(source, target, map) {
+  Object.keys(map).forEach((key) => {
+    if (source[key]) {
+      target[map[key]] = source[key];
+    }
+  });
+}
+function makeRelation(options, vantOptions, relation) {
+  const { type, name, linked, unlinked, linkChanged } = relation;
+  const { beforeCreate, destroyed } = vantOptions;
+  if (type === 'descendant') {
+    options.created = function () {
+      beforeCreate && beforeCreate.bind(this)();
+      this.children = this.children || [];
+    };
+    options.detached = function () {
+      this.children = [];
+      destroyed && destroyed.bind(this)();
+    };
+  }
+  options.relations = Object.assign(options.relations || {}, {
+    [`../${name}/index`]: {
+      type,
+      linked(node) {
+        relationFunctions[type].linked.bind(this)(node);
+        linked && linked.bind(this)(node);
+      },
+      linkChanged(node) {
+        linkChanged && linkChanged.bind(this)(node);
+      },
+      unlinked(node) {
+        relationFunctions[type].unlinked.bind(this)(node);
+        unlinked && unlinked.bind(this)(node);
+      },
+    },
+  });
+}
+function VantComponent(vantOptions = {}) {
+  const options = {};
+  mapKeys(vantOptions, options, {
+    data: 'data',
+    props: 'properties',
+    mixins: 'behaviors',
+    methods: 'methods',
+    beforeCreate: 'created',
+    created: 'attached',
+    mounted: 'ready',
+    relations: 'relations',
+    destroyed: 'detached',
+    classes: 'externalClasses',
+  });
+  const { relation } = vantOptions;
+  if (relation) {
+    makeRelation(options, vantOptions, relation);
+  }
+  // add default externalClasses
+  options.externalClasses = options.externalClasses || [];
+  options.externalClasses.push('custom-class');
+  // add default behaviors
+  options.behaviors = options.behaviors || [];
+  options.behaviors.push(basic);
+  // map field to form-field behavior
+  if (vantOptions.field) {
+    options.behaviors.push('wx://form-field');
+  }
+  if (options.properties) {
+    Object.keys(options.properties).forEach((name) => {
+      if (Array.isArray(options.properties[name])) {
+        // miniprogram do not allow multi type
+        options.properties[name] = null;
+      }
+    });
+  }
+  // add default options
+  options.options = {
+    multipleSlots: true,
+    addGlobalClass: true,
+  };
+  Component(options);
+}
+export { VantComponent };

+ 0 - 0
miniprogram_npm/vant-weapp/common/index.wxss


Some files were not shown because too many files changed in this diff