소스 검색

静态页面

1002884655 4 년 전
커밋
d79b9c51aa
100개의 변경된 파일1797개의 추가작업 그리고 0개의 파일을 삭제
  1. 12
    0
      .editorconfig
  2. 5
    0
      .eslintrc.js
  3. 16
    0
      .gitignore
  4. 4
    0
      .npmrc
  5. 10
    0
      babel.config.js
  6. 9
    0
      config/dev.js
  7. 70
    0
      config/index.js
  8. 18
    0
      config/prod.js
  9. 58
    0
      package.json
  10. 37
    0
      project.config.json
  11. 65
    0
      src/app.config.js
  12. 23
    0
      src/app.js
  13. 41
    0
      src/app.scss
  14. BIN
      src/assets/image/1.png
  15. BIN
      src/assets/image/2.png
  16. BIN
      src/assets/image/3.png
  17. BIN
      src/assets/image/fenxiang.png
  18. BIN
      src/assets/image/huishenghuo.png
  19. BIN
      src/assets/image/huodongxiangqing.png
  20. BIN
      src/assets/image/huodongzhaopianqiang.png
  21. BIN
      src/assets/image/iconhuiaixin-.png
  22. BIN
      src/assets/image/iconhuiaixin.png
  23. BIN
      src/assets/image/iconhuiquanyi-.png
  24. BIN
      src/assets/image/iconhuiquanyi.png
  25. BIN
      src/assets/image/iconhuishenghuo-.png
  26. BIN
      src/assets/image/iconhuishenghuo.png
  27. BIN
      src/assets/image/iconhuodong.png
  28. BIN
      src/assets/image/iconwode-.png
  29. BIN
      src/assets/image/iconwode.png
  30. BIN
      src/assets/image/jingcaihuodong.png
  31. BIN
      src/assets/image/lijibaoming.png
  32. BIN
      src/assets/image/liyuanhui.png
  33. BIN
      src/assets/image/mingxingyezhu.png
  34. BIN
      src/assets/image/mr@2x.png
  35. BIN
      src/assets/image/mybg@2x.png
  36. BIN
      src/assets/image/quexing@2x.png
  37. BIN
      src/assets/image/sqbg@2x.png
  38. BIN
      src/assets/image/time@2x.png
  39. BIN
      src/assets/image/toupiao.png
  40. BIN
      src/assets/image/wd@2x.png
  41. BIN
      src/assets/image/wodehuodong.png
  42. BIN
      src/assets/image/yezhuzixun.png
  43. BIN
      src/assets/image/yijianfankui.png
  44. BIN
      src/assets/image/yj@2x.png
  45. BIN
      src/assets/image/zhengnengliangshiji.png
  46. BIN
      src/assets/image/组 17112@2x.png
  47. 38
    0
      src/components/BannerSwiper/index.vue
  48. 32
    0
      src/components/ScrollY/index.vue
  49. 24
    0
      src/iconfont.scss
  50. 20
    0
      src/index.html
  51. 3
    0
      src/pages/HuiAiXin/EnergyStory/EnergyStoryDetail/index.config.js
  52. 30
    0
      src/pages/HuiAiXin/EnergyStory/EnergyStoryDetail/index.vue
  53. 3
    0
      src/pages/HuiAiXin/EnergyStory/EnergyStoryDetail/page.scss
  54. 3
    0
      src/pages/HuiAiXin/EnergyStory/index.config.js
  55. 30
    0
      src/pages/HuiAiXin/EnergyStory/index.vue
  56. 3
    0
      src/pages/HuiAiXin/EnergyStory/page.scss
  57. 3
    0
      src/pages/HuiAiXin/StarOwner/StarOwnerDetail/index.config.js
  58. 30
    0
      src/pages/HuiAiXin/StarOwner/StarOwnerDetail/index.vue
  59. 3
    0
      src/pages/HuiAiXin/StarOwner/StarOwnerDetail/page.scss
  60. 3
    0
      src/pages/HuiAiXin/StarOwner/index.config.js
  61. 30
    0
      src/pages/HuiAiXin/StarOwner/index.vue
  62. 3
    0
      src/pages/HuiAiXin/StarOwner/page.scss
  63. 3
    0
      src/pages/HuiAiXin/index.config.js
  64. 95
    0
      src/pages/HuiAiXin/index.vue
  65. 159
    0
      src/pages/HuiAiXin/page.scss
  66. 3
    0
      src/pages/HuiQuanYi/NoticeBoard/NoticeDetail/index.config.js
  67. 30
    0
      src/pages/HuiQuanYi/NoticeBoard/NoticeDetail/index.vue
  68. 3
    0
      src/pages/HuiQuanYi/NoticeBoard/NoticeDetail/page.scss
  69. 3
    0
      src/pages/HuiQuanYi/NoticeBoard/index.config.js
  70. 30
    0
      src/pages/HuiQuanYi/NoticeBoard/index.vue
  71. 3
    0
      src/pages/HuiQuanYi/NoticeBoard/page.scss
  72. 3
    0
      src/pages/HuiQuanYi/OwnersNews/NewsDetail/index.config.js
  73. 30
    0
      src/pages/HuiQuanYi/OwnersNews/NewsDetail/index.vue
  74. 3
    0
      src/pages/HuiQuanYi/OwnersNews/NewsDetail/page.scss
  75. 3
    0
      src/pages/HuiQuanYi/OwnersNews/index.config.js
  76. 30
    0
      src/pages/HuiQuanYi/OwnersNews/index.vue
  77. 3
    0
      src/pages/HuiQuanYi/OwnersNews/page.scss
  78. 3
    0
      src/pages/HuiQuanYi/index.config.js
  79. 71
    0
      src/pages/HuiQuanYi/index.vue
  80. 134
    0
      src/pages/HuiQuanYi/page.scss
  81. 3
    0
      src/pages/HuiShengHuo/ActivityList/ActivityDetail/JoinIn/index.config.js
  82. 31
    0
      src/pages/HuiShengHuo/ActivityList/ActivityDetail/JoinIn/index.vue
  83. 3
    0
      src/pages/HuiShengHuo/ActivityList/ActivityDetail/JoinIn/page.scss
  84. 3
    0
      src/pages/HuiShengHuo/ActivityList/ActivityDetail/Vote/index.config.js
  85. 31
    0
      src/pages/HuiShengHuo/ActivityList/ActivityDetail/Vote/index.vue
  86. 3
    0
      src/pages/HuiShengHuo/ActivityList/ActivityDetail/Vote/page.scss
  87. 3
    0
      src/pages/HuiShengHuo/ActivityList/ActivityDetail/index.config.js
  88. 31
    0
      src/pages/HuiShengHuo/ActivityList/ActivityDetail/index.vue
  89. 3
    0
      src/pages/HuiShengHuo/ActivityList/ActivityDetail/page.scss
  90. 3
    0
      src/pages/HuiShengHuo/ActivityList/index.config.js
  91. 84
    0
      src/pages/HuiShengHuo/ActivityList/index.vue
  92. 109
    0
      src/pages/HuiShengHuo/ActivityList/page.scss
  93. 3
    0
      src/pages/HuiShengHuo/PhotoList/PhotoDetail/index.config.js
  94. 44
    0
      src/pages/HuiShengHuo/PhotoList/PhotoDetail/index.vue
  95. 66
    0
      src/pages/HuiShengHuo/PhotoList/PhotoDetail/page.scss
  96. 3
    0
      src/pages/HuiShengHuo/PhotoList/index.config.js
  97. 68
    0
      src/pages/HuiShengHuo/PhotoList/index.vue
  98. 68
    0
      src/pages/HuiShengHuo/PhotoList/page.scss
  99. 3
    0
      src/pages/HuiShengHuo/index.config.js
  100. 0
    0
      src/pages/HuiShengHuo/index.vue

+ 12
- 0
.editorconfig 파일 보기

@@ -0,0 +1,12 @@
1
+# http://editorconfig.org
2
+root = true
3
+
4
+[*]
5
+indent_style = space
6
+indent_size = 2
7
+charset = utf-8
8
+trim_trailing_whitespace = true
9
+insert_final_newline = true
10
+
11
+[*.md]
12
+trim_trailing_whitespace = false

+ 5
- 0
.eslintrc.js 파일 보기

@@ -0,0 +1,5 @@
1
+// ESLint 检查 .vue 文件需要单独配置编辑器:
2
+// https://eslint.vuejs.org/user-guide/#editor-integrations
3
+module.exports = {
4
+  'extends': ['taro/vue']
5
+}

+ 16
- 0
.gitignore 파일 보기

@@ -0,0 +1,16 @@
1
+.DS_Store
2
+node_modules/
3
+dist/
4
+npm-debug.log*
5
+yarn-debug.log*
6
+yarn-error.log*
7
+package-lock.json
8
+tests/**/coverage/
9
+
10
+# Editor directories and files
11
+.idea
12
+.vscode
13
+*.suo
14
+*.ntvs*
15
+*.njsproj
16
+*.sln

+ 4
- 0
.npmrc 파일 보기

@@ -0,0 +1,4 @@
1
+registry=https://r.cnpmjs.org
2
+disturl=https://r.cnpmjs.org/node
3
+sass_binary_site=https://r.cnpmjs.org/node-sass/
4
+fse_binary_host_mirror=https://r.cnpmjs.org/fsevents

+ 10
- 0
babel.config.js 파일 보기

@@ -0,0 +1,10 @@
1
+// babel-preset-taro 更多选项和默认值:
2
+// https://github.com/NervJS/taro/blob/next/packages/babel-preset-taro/README.md
3
+module.exports = {
4
+  presets: [
5
+    ['taro', {
6
+      framework: 'vue',
7
+      ts: false
8
+    }]
9
+  ]
10
+}

+ 9
- 0
config/dev.js 파일 보기

@@ -0,0 +1,9 @@
1
+module.exports = {
2
+  env: {
3
+    NODE_ENV: '"development"'
4
+  },
5
+  defineConstants: {
6
+  },
7
+  mini: {},
8
+  h5: {}
9
+}

+ 70
- 0
config/index.js 파일 보기

@@ -0,0 +1,70 @@
1
+const config = {
2
+  projectName: 'myApp',
3
+  date: '2020-8-7',
4
+  designWidth: 750,
5
+  deviceRatio: {
6
+    640: 2.34 / 2,
7
+    750: 1,
8
+    828: 1.81 / 2
9
+  },
10
+  sourceRoot: 'src',
11
+  outputRoot: 'dist',
12
+  plugins: [],
13
+  defineConstants: {
14
+  },
15
+  copy: {
16
+    patterns: [
17
+    ],
18
+    options: {
19
+    }
20
+  },
21
+  framework: 'vue',
22
+  mini: {
23
+    postcss: {
24
+      pxtransform: {
25
+        enable: true,
26
+        config: {
27
+
28
+        }
29
+      },
30
+      url: {
31
+        enable: true,
32
+        config: {
33
+          limit: 1024 // 设定转换尺寸上限
34
+        }
35
+      },
36
+      cssModules: {
37
+        enable: false, // 默认为 false,如需使用 css modules 功能,则设为 true
38
+        config: {
39
+          namingPattern: 'module', // 转换模式,取值为 global/module
40
+          generateScopedName: '[name]__[local]___[hash:base64:5]'
41
+        }
42
+      }
43
+    }
44
+  },
45
+  h5: {
46
+    publicPath: '/',
47
+    staticDirectory: 'static',
48
+    postcss: {
49
+      autoprefixer: {
50
+        enable: true,
51
+        config: {
52
+        }
53
+      },
54
+      cssModules: {
55
+        enable: false, // 默认为 false,如需使用 css modules 功能,则设为 true
56
+        config: {
57
+          namingPattern: 'module', // 转换模式,取值为 global/module
58
+          generateScopedName: '[name]__[local]___[hash:base64:5]'
59
+        }
60
+      }
61
+    }
62
+  }
63
+}
64
+
65
+module.exports = function (merge) {
66
+  if (process.env.NODE_ENV === 'development') {
67
+    return merge({}, config, require('./dev'))
68
+  }
69
+  return merge({}, config, require('./prod'))
70
+}

+ 18
- 0
config/prod.js 파일 보기

@@ -0,0 +1,18 @@
1
+module.exports = {
2
+  env: {
3
+    NODE_ENV: '"production"'
4
+  },
5
+  defineConstants: {
6
+  },
7
+  mini: {},
8
+  h5: {
9
+    /**
10
+     * 如果h5端编译后体积过大,可以使用webpack-bundle-analyzer插件对打包体积进行分析。
11
+     * 参考代码如下:
12
+     * webpackChain (chain) {
13
+     *   chain.plugin('analyzer')
14
+     *     .use(require('webpack-bundle-analyzer').BundleAnalyzerPlugin, [])
15
+     * }
16
+     */
17
+  }
18
+}

+ 58
- 0
package.json 파일 보기

@@ -0,0 +1,58 @@
1
+{
2
+  "name": "myApp",
3
+  "version": "1.0.0",
4
+  "private": true,
5
+  "description": "",
6
+  "templateInfo": {
7
+    "name": "vuex",
8
+    "typescript": false,
9
+    "css": "sass"
10
+  },
11
+  "scripts": {
12
+    "build:weapp": "taro build --type weapp",
13
+    "build:swan": "taro build --type swan",
14
+    "build:alipay": "taro build --type alipay",
15
+    "build:tt": "taro build --type tt",
16
+    "build:h5": "taro build --type h5",
17
+    "build:rn": "taro build --type rn",
18
+    "build:qq": "taro build --type qq",
19
+    "build:quickapp": "taro build --type quickapp",
20
+    "dev:weapp": "npm run build:weapp -- --watch",
21
+    "dev:swan": "npm run build:swan -- --watch",
22
+    "dev:alipay": "npm run build:alipay -- --watch",
23
+    "dev:tt": "npm run build:tt -- --watch",
24
+    "dev:h5": "npm run build:h5 -- --watch",
25
+    "dev:rn": "npm run build:rn -- --watch",
26
+    "dev:qq": "npm run build:qq -- --watch",
27
+    "dev:quickapp": "npm run build:quickapp -- --watch"
28
+  },
29
+  "browserslist": [
30
+    "last 3 versions",
31
+    "Android >= 4.1",
32
+    "ios >= 8"
33
+  ],
34
+  "author": "",
35
+  "license": "MIT",
36
+  "dependencies": {
37
+    "@babel/runtime": "^7.7.7",
38
+    "@tarojs/components": "3.0.7",
39
+    "@tarojs/runtime": "3.0.7",
40
+    "@tarojs/taro": "3.0.7",
41
+    "qs": "^6.9.4",
42
+    "vue": "^2.5.0",
43
+    "vue-template-compiler": "^2.5.0",
44
+    "vuex": "^3.5.1"
45
+  },
46
+  "devDependencies": {
47
+    "@types/webpack-env": "^1.13.6",
48
+    "@tarojs/mini-runner": "3.0.7",
49
+    "@tarojs/webpack-runner": "3.0.7",
50
+    "@babel/core": "^7.8.0",
51
+    "babel-preset-taro": "3.0.7",
52
+    "vue-loader": "^15.9.2",
53
+    "eslint-plugin-vue": "^6.x",
54
+    "eslint-config-taro": "3.0.7",
55
+    "eslint": "^6.8.0",
56
+    "stylelint": "9.3.0"
57
+  }
58
+}

+ 37
- 0
project.config.json 파일 보기

@@ -0,0 +1,37 @@
1
+{
2
+	"miniprogramRoot": "dist/",
3
+	"projectname": "myApp",
4
+	"description": "",
5
+	"appid": "wxd9ee3a9480a4e544",
6
+	"setting": {
7
+		"urlCheck": true,
8
+		"es6": false,
9
+		"enhance": false,
10
+		"postcss": false,
11
+		"preloadBackgroundData": false,
12
+		"minified": false,
13
+		"newFeature": false,
14
+		"coverView": true,
15
+		"nodeModules": false,
16
+		"autoAudits": false,
17
+		"showShadowRootInWxmlPanel": true,
18
+		"scopeDataCheck": false,
19
+		"uglifyFileName": false,
20
+		"checkInvalidKey": true,
21
+		"checkSiteMap": true,
22
+		"uploadWithSourceMap": true,
23
+		"compileHotReLoad": false,
24
+		"babelSetting": {
25
+			"ignore": [],
26
+			"disablePlugins": [],
27
+			"outputPath": ""
28
+		},
29
+		"useIsolateContext": true,
30
+		"useCompilerModule": false,
31
+		"userConfirmedUseCompilerModuleSwitch": false
32
+	},
33
+	"compileType": "miniprogram",
34
+	"simulatorType": "wechat",
35
+	"simulatorPluginLibVersion": {},
36
+	"condition": {}
37
+}

+ 65
- 0
src/app.config.js 파일 보기

@@ -0,0 +1,65 @@
1
+export default {
2
+  pages: [
3
+    'pages/HuiShengHuo/ActivityList/ActivityDetail/index', // 荟生活-活动列表-活动详情
4
+
5
+    'pages/HuiShengHuo/index', // 荟生活
6
+    'pages/HuiShengHuo/ActivityList/index', // 荟生活-活动列表
7
+    'pages/HuiShengHuo/ActivityList/ActivityDetail/JoinIn/index', // 荟生活-活动列表-活动详情-报名
8
+    'pages/HuiShengHuo/ActivityList/ActivityDetail/Vote/index', // 荟生活-活动列表-活动详情-投票
9
+    'pages/HuiShengHuo/PhotoList/index', // 荟生活-照片列表
10
+    'pages/HuiShengHuo/PhotoList/PhotoDetail/index', // 荟生活-照片列表-照片详情
11
+
12
+    'pages/HuiQuanYi/index', // 荟权益
13
+    'pages/HuiQuanYi/NoticeBoard/index', // 荟权益-公告栏
14
+    'pages/HuiQuanYi/NoticeBoard/NoticeDetail/index', // 荟权益-公告栏-详情
15
+    'pages/HuiQuanYi/OwnersNews/index', // 荟权益-业主资讯
16
+    'pages/HuiQuanYi/OwnersNews/NewsDetail/index', // 荟权益-业主资讯-详情
17
+
18
+    'pages/HuiAiXin/index', // 荟爱心
19
+    'pages/HuiAiXin/StarOwner/index', // 荟爱心-明星业主
20
+    'pages/HuiAiXin/StarOwner/StarOwnerDetail/index', // 荟爱心-明星业主-详情
21
+    'pages/HuiAiXin/EnergyStory/index', // 荟爱心-正能量事迹
22
+    'pages/HuiAiXin/EnergyStory/EnergyStoryDetail/index', // 荟爱心-正能量事迹-详情
23
+
24
+    'pages/WoDe/index', // 我的
25
+    'pages/WoDe/MyActivityList/index', // 我的-活动列表
26
+    'pages/WoDe/Feedback/index', // 我的-反馈
27
+
28
+    'pages/SignIn/index' // 登录页
29
+
30
+  ],
31
+  tabBar: {
32
+    list: [
33
+      {
34
+        iconPath: 'assets/image/iconhuishenghuo-.png',
35
+        selectedIconPath: 'assets/image/iconhuishenghuo.png',
36
+        pagePath: 'pages/HuiShengHuo/index',
37
+        text: '荟 · 生活'
38
+      },
39
+      {
40
+        iconPath: 'assets/image/iconhuiquanyi-.png',
41
+        selectedIconPath: 'assets/image/iconhuiquanyi.png',
42
+        pagePath: 'pages/HuiQuanYi/index',
43
+        text: '荟 · 权益'
44
+      },
45
+      {
46
+        iconPath: 'assets/image/iconhuiaixin-.png',
47
+        selectedIconPath: 'assets/image/iconhuiaixin.png',
48
+        pagePath: 'pages/HuiAiXin/index',
49
+        text: '荟 · 爱心'
50
+      },
51
+      {
52
+        iconPath: 'assets/image/iconwode-.png',
53
+        selectedIconPath: 'assets/image/iconwode.png',
54
+        pagePath: 'pages/WoDe/index',
55
+        text: '我的'
56
+      }
57
+    ]
58
+  },
59
+  window: {
60
+    backgroundTextStyle: 'light',
61
+    navigationBarBackgroundColor: '#fff',
62
+    navigationBarTitleText: 'WeChat',
63
+    navigationBarTextStyle: 'black'
64
+  }
65
+}

+ 23
- 0
src/app.js 파일 보기

@@ -0,0 +1,23 @@
1
+import Vue from 'vue'
2
+import store from './store/index'
3
+
4
+import './app.scss'
5
+import './iconfont.scss'
6
+
7
+// Vue.config.productionTip = false
8
+
9
+// 引入项目通用(顶层)方法对象
10
+import ToolClass from './util/PublicMethod/index'
11
+Vue.prototype.ToolClass = ToolClass
12
+
13
+const App = new Vue({
14
+  store,
15
+  onShow (options) {
16
+  },
17
+  render(h) {
18
+    // this.$slots.default 是将要会渲染的页面
19
+    return h('block', this.$slots.default)
20
+  }
21
+})
22
+
23
+export default App

+ 41
- 0
src/app.scss 파일 보기

@@ -0,0 +1,41 @@
1
+page {
2
+  width: 100%;
3
+  height: 100%;
4
+  background: #eee;
5
+
6
+  .centerLabel {
7
+    display: block;
8
+    position: absolute;
9
+    left: 50%;
10
+    top: 50%;
11
+    transform: translate(-50%, -50%);
12
+    -webkit-transform: translate(-50%, -50%);
13
+  }
14
+
15
+  .flex-h {
16
+    display: flex;
17
+    display: -webkit-flex;
18
+  }
19
+
20
+  .flex-v {
21
+    display: flex;
22
+    display: -webkit-flex;
23
+    flex-direction: column;
24
+    -webkit-flex-direction: column;
25
+  }
26
+
27
+  .flex-item {
28
+    flex: 1;
29
+    -webkit-flex: 1;
30
+    position: relative;
31
+    overflow: hidden;
32
+  }
33
+
34
+  .text-overflow-line2 {
35
+    overflow: hidden;
36
+    text-overflow: ellipsis;
37
+    display: -webkit-box;
38
+    -webkit-box-orient: vertical;
39
+    -webkit-line-clamp: 2;
40
+  }
41
+}

BIN
src/assets/image/1.png 파일 보기


BIN
src/assets/image/2.png 파일 보기


BIN
src/assets/image/3.png 파일 보기


BIN
src/assets/image/fenxiang.png 파일 보기


BIN
src/assets/image/huishenghuo.png 파일 보기


BIN
src/assets/image/huodongxiangqing.png 파일 보기


BIN
src/assets/image/huodongzhaopianqiang.png 파일 보기


BIN
src/assets/image/iconhuiaixin-.png 파일 보기


BIN
src/assets/image/iconhuiaixin.png 파일 보기


BIN
src/assets/image/iconhuiquanyi-.png 파일 보기


BIN
src/assets/image/iconhuiquanyi.png 파일 보기


BIN
src/assets/image/iconhuishenghuo-.png 파일 보기


BIN
src/assets/image/iconhuishenghuo.png 파일 보기


BIN
src/assets/image/iconhuodong.png 파일 보기


BIN
src/assets/image/iconwode-.png 파일 보기


BIN
src/assets/image/iconwode.png 파일 보기


BIN
src/assets/image/jingcaihuodong.png 파일 보기


BIN
src/assets/image/lijibaoming.png 파일 보기


BIN
src/assets/image/liyuanhui.png 파일 보기


BIN
src/assets/image/mingxingyezhu.png 파일 보기


BIN
src/assets/image/mr@2x.png 파일 보기


BIN
src/assets/image/mybg@2x.png 파일 보기


BIN
src/assets/image/quexing@2x.png 파일 보기


BIN
src/assets/image/sqbg@2x.png 파일 보기


BIN
src/assets/image/time@2x.png 파일 보기


BIN
src/assets/image/toupiao.png 파일 보기


BIN
src/assets/image/wd@2x.png 파일 보기


BIN
src/assets/image/wodehuodong.png 파일 보기


BIN
src/assets/image/yezhuzixun.png 파일 보기


BIN
src/assets/image/yijianfankui.png 파일 보기


BIN
src/assets/image/yj@2x.png 파일 보기


BIN
src/assets/image/zhengnengliangshiji.png 파일 보기


BIN
src/assets/image/组 17112@2x.png 파일 보기


+ 38
- 0
src/components/BannerSwiper/index.vue 파일 보기

@@ -0,0 +1,38 @@
1
+<template>
2
+  <view class="BannerSwiper">
3
+    <swiper style="width: 100%; height: 100%;" indicator-color="rgba(255,255,255,0.3)" indicator-active-color="rgba(255,255,255,1)" :indicator-dots="true" :autoplay="true" :interval="2000" :duration="300">
4
+      <block v-for="(item, index) in List" :key="index">
5
+        <swiper-item>
6
+          <view class="swiper-item">{{item}}</view>
7
+        </swiper-item>
8
+      </block>
9
+    </swiper>
10
+  </view>
11
+</template>
12
+
13
+<script>
14
+export default {
15
+  name: 'BannerSwiper',
16
+  props: {
17
+    List: {
18
+      default: () => {
19
+        return ['1', '2', '3', '4', '5']
20
+      },
21
+      type: Array
22
+    }
23
+  },
24
+  data () {
25
+    return {
26
+    }
27
+  },
28
+  methods: {
29
+  }
30
+}
31
+</script>
32
+
33
+<style>
34
+.BannerSwiper {
35
+  width: 100%;
36
+  height: 100%;
37
+}
38
+</style>

+ 32
- 0
src/components/ScrollY/index.vue 파일 보기

@@ -0,0 +1,32 @@
1
+<template>
2
+  <view class="ScrollY">
3
+    <scroll-view style="width: 100%; height: 100%;" :scroll-y="true" :refresher-enabled="true" :refresher-threshold="120" refresher-background="#f8f8f8" :refresher-triggered="IsRefreshing" @refresherpulling="$emit('Refresh')">
4
+      <slot></slot>
5
+    </scroll-view>
6
+  </view>
7
+</template>
8
+
9
+<script>
10
+export default {
11
+  name: 'ScrollY',
12
+  props: {
13
+    IsRefreshing: {
14
+      default: false,
15
+      type: Boolean
16
+    }
17
+  },
18
+  data () {
19
+    return {
20
+    }
21
+  },
22
+  methods: {
23
+  }
24
+}
25
+</script>
26
+
27
+<style>
28
+.ScrollY {
29
+  width: 100%;
30
+  height: 100%;
31
+}
32
+</style>

+ 24
- 0
src/iconfont.scss 파일 보기

@@ -0,0 +1,24 @@
1
+@font-face {font-family: "iconfont";
2
+  src: url('//at.alicdn.com/t/font_1998922_g8nkn1klezi.eot?t=1597115213858'); /* IE9 */
3
+  src: url('//at.alicdn.com/t/font_1998922_g8nkn1klezi.eot?t=1597115213858#iefix') format('embedded-opentype'), /* IE6-IE8 */
4
+  url('data:application/x-font-woff2;charset=utf-8;base64,d09GMgABAAAAAALsAAsAAAAABtwAAAKfAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHEIGVgCDBgqBPIEvATYCJAMMCwgABCAFhG0HPxv+BSMR9mLuCZD95QE9RLoneIYmThm2YfE2B8GHbdBGDqNFTVOubfnRPGyk/otisEzH9zmCpzV+83b37qskSSrQzTwRuiZIjRAJRaqIhHwBMHSurbFSIHUgN5H+DlpR0UcCLTa37Gw3IyIUn+Q8+H2+T1rCl14IexzjFhgQlkHkfLD5zMHaawOTITU+z+X0JtCB3FXfspzmGH7UCzAOKMC9MIqsQAIOQDuW1zUpT7xBr+4TaDdmXmwedh/WqmDLAnGbrl3Q2ksril9rFeqZvUU8VmlND9MzHpWfj7+r0UpSZWzt/qtbLlv/Q89Zo9OakCHA4QoZ8yjE2dnycVn4XNZuLuuttSKkq3JNU6oza/3RP14iaqy7E0xDJfGDlBP8+IAEMqj71WWso+zgDwgxEsnD5JP3NR+P33WbCaP4mXWNNBm9miEXDxObPpL0yfUCgJ9maz/AvJ1aEf+E2gKXO74anPGHXt6qupQZqbxcdturhFyUJEw/U0qQj+bZKOlWk76gkxb6nRc6LjzKGVHrtYC3ze+BZJOCi9L6u0hgfRrkQMl0zJNLopbqIpqNIIIJUAYxDVi834fj1iF0P6HV0IFoi9EWWatxsrDzqHRYi1qrdWg3Z9vhDgPuyKK0YdZdgtDrCZJuT5H1ek4W9j0qw/6j1hsZ7Y4Gd2aH3wbZBJ1iBP8HCrwn4VNb9d4xn6uTrq7k3ygH5aCtmmFtxB3lig3HJ3eqCZLwBgN5DNeVoQjPGLSaVEtf12nuRVXgzViToFOMwP8BBd6THq129P475nN1siKaKr5RDpoctCoNghzNO0r0K88cn9xRTSAJb2AgQVx5mUGZnzVj0Mp0oFh6NR2WsObqeetmv2PQbtgZ+ZIiR0E+3e7pNpkpyqdQntQYAA==') format('woff2'),
5
+  url('//at.alicdn.com/t/font_1998922_g8nkn1klezi.woff?t=1597115213858') format('woff'),
6
+  url('//at.alicdn.com/t/font_1998922_g8nkn1klezi.ttf?t=1597115213858') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+ */
7
+  url('//at.alicdn.com/t/font_1998922_g8nkn1klezi.svg?t=1597115213858#iconfont') format('svg'); /* iOS 4.1- */
8
+}
9
+
10
+.iconfont {
11
+  font-family: "iconfont" !important;
12
+  font-size: 16px;
13
+  font-style: normal;
14
+  -webkit-font-smoothing: antialiased;
15
+  -moz-osx-font-smoothing: grayscale;
16
+}
17
+
18
+.iconguanbi:before {
19
+  content: "\e639";
20
+}
21
+
22
+.iconjiantouright:before {
23
+  content: "\e67b";
24
+}

+ 20
- 0
src/index.html 파일 보기

@@ -0,0 +1,20 @@
1
+<!DOCTYPE html>
2
+<html>
3
+<head>
4
+  <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
5
+  <meta content="width=device-width,initial-scale=1,user-scalable=no" name="viewport">
6
+  <meta name="apple-mobile-web-app-capable" content="yes">
7
+  <meta name="apple-touch-fullscreen" content="yes">
8
+  <meta name="format-detection" content="telephone=no,address=no">
9
+  <meta name="apple-mobile-web-app-status-bar-style" content="white">
10
+  <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" >
11
+  <link rel="stylesheet" href="//at.alicdn.com/t/font_1998922_g8nkn1klezi.css">
12
+  <title></title>
13
+  <script>
14
+    !function(x){function w(){var v,u,t,tes,s=x.document,r=s.documentElement,a=r.getBoundingClientRect().width;if(!v&&!u){var n=!!x.navigator.appVersion.match(/AppleWebKit.*Mobile.*/);v=x.devicePixelRatio;tes=x.devicePixelRatio;v=n?v:1,u=1/v}if(a>=640){r.style.fontSize="40px"}else{if(a<=320){r.style.fontSize="20px"}else{r.style.fontSize=a/320*20+"px"}}}x.addEventListener("resize",function(){w()});w()}(window);
15
+  </script>
16
+</head>
17
+<body>
18
+  <div id="app"></div>
19
+</body>
20
+</html>

+ 3
- 0
src/pages/HuiAiXin/EnergyStory/EnergyStoryDetail/index.config.js 파일 보기

@@ -0,0 +1,3 @@
1
+export default {
2
+  navigationBarTitleText: '正能量事迹详情'
3
+}

+ 30
- 0
src/pages/HuiAiXin/EnergyStory/EnergyStoryDetail/index.vue 파일 보기

@@ -0,0 +1,30 @@
1
+<template>
2
+  <view class="page">
3
+    正能量事迹详情
4
+  </view>
5
+</template>
6
+
7
+<script>
8
+
9
+export default {
10
+  name: 'EnergyStoryDetail',
11
+  data () {
12
+    return {
13
+
14
+    }
15
+  },
16
+  components: {
17
+  },
18
+  created () {
19
+    this.Init()
20
+  },
21
+  methods: {
22
+    Init () {
23
+    }
24
+  }
25
+}
26
+</script>
27
+
28
+<style lang="scss">
29
+@import "page.scss";
30
+</style>

+ 3
- 0
src/pages/HuiAiXin/EnergyStory/EnergyStoryDetail/page.scss 파일 보기

@@ -0,0 +1,3 @@
1
+.page {
2
+  width: 100%;
3
+}

+ 3
- 0
src/pages/HuiAiXin/EnergyStory/index.config.js 파일 보기

@@ -0,0 +1,3 @@
1
+export default {
2
+  navigationBarTitleText: '正能量事迹'
3
+}

+ 30
- 0
src/pages/HuiAiXin/EnergyStory/index.vue 파일 보기

@@ -0,0 +1,30 @@
1
+<template>
2
+  <view class="page">
3
+    正能量事迹
4
+  </view>
5
+</template>
6
+
7
+<script>
8
+
9
+export default {
10
+  name: 'EnergyStory',
11
+  data () {
12
+    return {
13
+
14
+    }
15
+  },
16
+  components: {
17
+  },
18
+  created () {
19
+    this.Init()
20
+  },
21
+  methods: {
22
+    Init () {
23
+    }
24
+  }
25
+}
26
+</script>
27
+
28
+<style lang="scss">
29
+@import "page.scss";
30
+</style>

+ 3
- 0
src/pages/HuiAiXin/EnergyStory/page.scss 파일 보기

@@ -0,0 +1,3 @@
1
+.page {
2
+  width: 100%;
3
+}

+ 3
- 0
src/pages/HuiAiXin/StarOwner/StarOwnerDetail/index.config.js 파일 보기

@@ -0,0 +1,3 @@
1
+export default {
2
+  navigationBarTitleText: '明星业主详情'
3
+}

+ 30
- 0
src/pages/HuiAiXin/StarOwner/StarOwnerDetail/index.vue 파일 보기

@@ -0,0 +1,30 @@
1
+<template>
2
+  <view class="page">
3
+    明星业主详情
4
+  </view>
5
+</template>
6
+
7
+<script>
8
+
9
+export default {
10
+  name: 'StarOwnerDetail',
11
+  data () {
12
+    return {
13
+
14
+    }
15
+  },
16
+  components: {
17
+  },
18
+  created () {
19
+    this.Init()
20
+  },
21
+  methods: {
22
+    Init () {
23
+    }
24
+  }
25
+}
26
+</script>
27
+
28
+<style lang="scss">
29
+@import "page.scss";
30
+</style>

+ 3
- 0
src/pages/HuiAiXin/StarOwner/StarOwnerDetail/page.scss 파일 보기

@@ -0,0 +1,3 @@
1
+.page {
2
+  width: 100%;
3
+}

+ 3
- 0
src/pages/HuiAiXin/StarOwner/index.config.js 파일 보기

@@ -0,0 +1,3 @@
1
+export default {
2
+  navigationBarTitleText: '明星业主'
3
+}

+ 30
- 0
src/pages/HuiAiXin/StarOwner/index.vue 파일 보기

@@ -0,0 +1,30 @@
1
+<template>
2
+  <view class="page">
3
+    明星业主
4
+  </view>
5
+</template>
6
+
7
+<script>
8
+
9
+export default {
10
+  name: 'StarOwner',
11
+  data () {
12
+    return {
13
+
14
+    }
15
+  },
16
+  components: {
17
+  },
18
+  created () {
19
+    this.Init()
20
+  },
21
+  methods: {
22
+    Init () {
23
+    }
24
+  }
25
+}
26
+</script>
27
+
28
+<style lang="scss">
29
+@import "page.scss";
30
+</style>

+ 3
- 0
src/pages/HuiAiXin/StarOwner/page.scss 파일 보기

@@ -0,0 +1,3 @@
1
+.page {
2
+  width: 100%;
3
+}

+ 3
- 0
src/pages/HuiAiXin/index.config.js 파일 보기

@@ -0,0 +1,3 @@
1
+export default {
2
+  navigationBarTitleText: '荟 · 爱心'
3
+}

+ 95
- 0
src/pages/HuiAiXin/index.vue 파일 보기

@@ -0,0 +1,95 @@
1
+<template>
2
+  <view class="page HuiAiXin">
3
+    <ScrollY :IsRefreshing="IsRefreshing" @Refresh="Refresh">
4
+
5
+      <!-- banner -->
6
+      <view class="Banner">
7
+        <view>
8
+          <BannerSwiper></BannerSwiper>
9
+        </view>
10
+      </view>
11
+
12
+      <!-- 明星业主 -->
13
+      <view class="StarOwnerList">
14
+        <view class="flex-h">
15
+          <view class="flex-item">
16
+            <image mode="heightFix" src="https://cjgw.oss-cn-hangzhou.aliyuncs.com/ygcxxfb/image/mingxingyezhu.png"></image>
17
+          </view>
18
+          <navigator url="./StarOwner/index" hover-class="other-navigator-hover" class="More">更多 <text class="iconfont iconjiantouright"></text></navigator>
19
+        </view>
20
+        <view class="ListContainer">
21
+          <scroll-view scroll-x="true">
22
+            <view class="List">
23
+              <navigator v-for="(item, index) in 10" :key="index" url="./StarOwner/StarOwnerDetail/index" hover-class="other-navigator-hover" class="Item">
24
+                <view class="Img"></view>
25
+                <text class="Info">业主家庭名称</text>
26
+              </navigator>
27
+            </view>
28
+            <view style="width: 100%; height: 20px;"></view>
29
+          </scroll-view>
30
+        </view>
31
+      </view>
32
+
33
+      <!-- 正能量事迹 -->
34
+      <view class="StoryList">
35
+        <view class="flex-h">
36
+          <view class="flex-item">
37
+            <image mode="heightFix" src="https://cjgw.oss-cn-hangzhou.aliyuncs.com/ygcxxfb/image/zhengnengliangshiji.png"></image>
38
+          </view>
39
+          <navigator url="./EnergyStory/index" hover-class="other-navigator-hover" class="More">更多 <text class="iconfont iconjiantouright"></text></navigator>
40
+        </view>
41
+        <view class="List">
42
+          <navigator v-for="(item, index) in 20" :key="index" url="./EnergyStory/EnergyStoryDetail/index" hover-class="other-navigator-hover" class="Item flex-h">
43
+            <view class="flex-item">
44
+              <text>事迹标题事迹标题事迹标题事迹标题事迹标题事迹标题事迹标题事迹标题事迹标题事迹标题事迹标题事迹标题事迹标题事迹标题事迹标题事迹标题事迹标题事迹标题事迹标题事迹标题</text>
45
+              <text>副标题</text>
46
+              <text>来源</text>
47
+            </view>
48
+            <view class="Img">
49
+              <view></view>
50
+            </view>
51
+          </navigator>
52
+        </view>
53
+      </view>
54
+
55
+    </ScrollY>
56
+  </view>
57
+</template>
58
+
59
+<script>
60
+import ScrollY from '../../components/ScrollY/index'
61
+import BannerSwiper from '../../components/BannerSwiper/index'
62
+export default {
63
+  name: 'HuiAiXin',
64
+  data () {
65
+    return {
66
+      IsRefreshing: false,
67
+      DataLock: false
68
+    }
69
+  },
70
+  components: {
71
+    ScrollY,
72
+    BannerSwiper
73
+  },
74
+  created () {
75
+    this.Init()
76
+  },
77
+  methods: {
78
+    Init () {
79
+    },
80
+    Refresh (e) {
81
+      if (this.DataLock) return
82
+      this.DataLock = true
83
+      this.IsRefreshing = true
84
+      setTimeout(() => {
85
+        this.IsRefreshing = false
86
+        this.DataLock = false
87
+      }, 1000)
88
+    }
89
+  }
90
+}
91
+</script>
92
+
93
+<style lang="scss">
94
+@import "page.scss";
95
+</style>

+ 159
- 0
src/pages/HuiAiXin/page.scss 파일 보기

@@ -0,0 +1,159 @@
1
+.page.HuiAiXin {
2
+  width: 100%;
3
+  height: 100%;
4
+  .Banner {
5
+    width: 100%;
6
+    padding-bottom: 38%;
7
+    position: relative;
8
+    overflow: hidden;
9
+    > view {
10
+      width: 100%;
11
+      position: absolute;
12
+      left: 0;
13
+      top: 0;
14
+      bottom: 0;
15
+      overflow: hidden;
16
+      background: #ccc;
17
+    }
18
+  }
19
+  .StarOwnerList {
20
+    padding: 20px 0;
21
+    background: #fff;
22
+    margin-top: 20px;
23
+    > .flex-h {
24
+      padding: 0 20px;
25
+      align-items: center;
26
+      margin-top: 10px;
27
+      > .flex-item {
28
+        > image {
29
+          height: 48px;
30
+        }
31
+      }
32
+      > .More {
33
+        font-size: 26px;
34
+        color: #999;
35
+        > text {
36
+          font-size: 26px;
37
+        }
38
+      }
39
+    }
40
+    > .ListContainer {
41
+      width: 100%;
42
+      position: relative;
43
+      overflow: hidden;
44
+      margin-top: 40px;
45
+      margin-bottom: 10px;
46
+      > scroll-view {
47
+        .List {
48
+          font-size: 0;
49
+          white-space: nowrap;
50
+          overflow: visible;
51
+          > .Item {
52
+            width: 80%;
53
+            position: relative;
54
+            overflow: hidden;
55
+            display: inline-block;
56
+            vertical-align: middle;
57
+            margin-left: 25px;
58
+            border-radius: 20px;
59
+            box-shadow: 0 5px 10px 5px rgba(0, 0, 0, 0.08);
60
+            &:last-child {
61
+              margin-right: 25px;
62
+            }
63
+            > .Img {
64
+              width: 100%;
65
+              padding-bottom: 45%;
66
+              background: #ccc;
67
+              position: relative;
68
+              overflow: hidden;
69
+            }
70
+            > .Info {
71
+              display: block;
72
+              padding: 0 34px;
73
+              font-size: 24px;
74
+              line-height: 70px;
75
+              white-space: nowrap;
76
+              overflow: hidden;
77
+              text-overflow: ellipsis;
78
+              color: #333;
79
+            }
80
+          }
81
+        }
82
+      }
83
+    }
84
+  }
85
+  .StoryList {
86
+    padding: 20px 0;
87
+    background: #fff;
88
+    margin-top: 20px;
89
+    > .flex-h {
90
+      padding: 0 20px;
91
+      align-items: center;
92
+      margin-top: 10px;
93
+      > .flex-item {
94
+        > image {
95
+          height: 48px;
96
+        }
97
+      }
98
+      > .More {
99
+        font-size: 26px;
100
+        color: #999;
101
+        > text {
102
+          font-size: 26px;
103
+        }
104
+      }
105
+    }
106
+    > .List {
107
+      position: relative;
108
+      overflow: hidden;
109
+      margin-bottom: 30px;
110
+      padding-left: 30px;
111
+      > .Item {
112
+        padding: 40px 0;
113
+        border-bottom: 2px solid #f5f5f5;
114
+        > .flex-item {
115
+          margin-right: 20px;
116
+          > text {
117
+            display: block;
118
+            font-size: 28px;
119
+            line-height: 40px;
120
+            overflow: hidden;
121
+            margin-top: 6px;
122
+            &:nth-child(1) {
123
+              text-overflow: ellipsis;
124
+              display: -webkit-box;
125
+              -webkit-box-orient: vertical;
126
+              -webkit-line-clamp: 2;
127
+              margin-top: 0;
128
+            }
129
+            &:nth-child(2) {
130
+              color: #666;
131
+              font-size: 24px;
132
+              white-space: nowrap;
133
+              text-overflow: ellipsis;
134
+            }
135
+            &:nth-child(3) {
136
+              color: #FE4E45;
137
+              font-size: 24px;
138
+              white-space: nowrap;
139
+              text-overflow: ellipsis;
140
+            }
141
+          }
142
+        }
143
+        > .Img {
144
+          width: 34%;
145
+          margin-right: 20px;
146
+          position: relative;
147
+          overflow: hidden;
148
+          > view {
149
+            width: 100%;
150
+            padding-bottom: 70%;
151
+            background: #ccc;
152
+            position: relative;
153
+            overflow: hidden;
154
+          }
155
+        }
156
+      }
157
+    }
158
+  }
159
+}

+ 3
- 0
src/pages/HuiQuanYi/NoticeBoard/NoticeDetail/index.config.js 파일 보기

@@ -0,0 +1,3 @@
1
+export default {
2
+  navigationBarTitleText: '公告详情'
3
+}

+ 30
- 0
src/pages/HuiQuanYi/NoticeBoard/NoticeDetail/index.vue 파일 보기

@@ -0,0 +1,30 @@
1
+<template>
2
+  <view class="page">
3
+    公告栏
4
+  </view>
5
+</template>
6
+
7
+<script>
8
+
9
+export default {
10
+  name: 'NoticeBoard',
11
+  data () {
12
+    return {
13
+
14
+    }
15
+  },
16
+  components: {
17
+  },
18
+  created () {
19
+    this.Init()
20
+  },
21
+  methods: {
22
+    Init () {
23
+    }
24
+  }
25
+}
26
+</script>
27
+
28
+<style lang="scss">
29
+@import "page.scss";
30
+</style>

+ 3
- 0
src/pages/HuiQuanYi/NoticeBoard/NoticeDetail/page.scss 파일 보기

@@ -0,0 +1,3 @@
1
+.page {
2
+  width: 100%;
3
+}

+ 3
- 0
src/pages/HuiQuanYi/NoticeBoard/index.config.js 파일 보기

@@ -0,0 +1,3 @@
1
+export default {
2
+  navigationBarTitleText: '业主公告栏'
3
+}

+ 30
- 0
src/pages/HuiQuanYi/NoticeBoard/index.vue 파일 보기

@@ -0,0 +1,30 @@
1
+<template>
2
+  <view class="page">
3
+    公告详情
4
+  </view>
5
+</template>
6
+
7
+<script>
8
+
9
+export default {
10
+  name: 'NoticeDetail',
11
+  data () {
12
+    return {
13
+
14
+    }
15
+  },
16
+  components: {
17
+  },
18
+  created () {
19
+    this.Init()
20
+  },
21
+  methods: {
22
+    Init () {
23
+    }
24
+  }
25
+}
26
+</script>
27
+
28
+<style lang="scss">
29
+@import "page.scss";
30
+</style>

+ 3
- 0
src/pages/HuiQuanYi/NoticeBoard/page.scss 파일 보기

@@ -0,0 +1,3 @@
1
+.page {
2
+  width: 100%;
3
+}

+ 3
- 0
src/pages/HuiQuanYi/OwnersNews/NewsDetail/index.config.js 파일 보기

@@ -0,0 +1,3 @@
1
+export default {
2
+  navigationBarTitleText: '咨询详情'
3
+}

+ 30
- 0
src/pages/HuiQuanYi/OwnersNews/NewsDetail/index.vue 파일 보기

@@ -0,0 +1,30 @@
1
+<template>
2
+  <view class="page">
3
+    资讯详情
4
+  </view>
5
+</template>
6
+
7
+<script>
8
+
9
+export default {
10
+  name: 'NewsDetail',
11
+  data () {
12
+    return {
13
+
14
+    }
15
+  },
16
+  components: {
17
+  },
18
+  created () {
19
+    this.Init()
20
+  },
21
+  methods: {
22
+    Init () {
23
+    }
24
+  }
25
+}
26
+</script>
27
+
28
+<style lang="scss">
29
+@import "page.scss";
30
+</style>

+ 3
- 0
src/pages/HuiQuanYi/OwnersNews/NewsDetail/page.scss 파일 보기

@@ -0,0 +1,3 @@
1
+.page {
2
+  width: 100%;
3
+}

+ 3
- 0
src/pages/HuiQuanYi/OwnersNews/index.config.js 파일 보기

@@ -0,0 +1,3 @@
1
+export default {
2
+  navigationBarTitleText: '业主资讯'
3
+}

+ 30
- 0
src/pages/HuiQuanYi/OwnersNews/index.vue 파일 보기

@@ -0,0 +1,30 @@
1
+<template>
2
+  <view class="page">
3
+    业主资讯
4
+  </view>
5
+</template>
6
+
7
+<script>
8
+
9
+export default {
10
+  name: 'OwnersNews',
11
+  data () {
12
+    return {
13
+
14
+    }
15
+  },
16
+  components: {
17
+  },
18
+  created () {
19
+    this.Init()
20
+  },
21
+  methods: {
22
+    Init () {
23
+    }
24
+  }
25
+}
26
+</script>
27
+
28
+<style lang="scss">
29
+@import "page.scss";
30
+</style>

+ 3
- 0
src/pages/HuiQuanYi/OwnersNews/page.scss 파일 보기

@@ -0,0 +1,3 @@
1
+.page {
2
+  width: 100%;
3
+}

+ 3
- 0
src/pages/HuiQuanYi/index.config.js 파일 보기

@@ -0,0 +1,3 @@
1
+export default {
2
+  navigationBarTitleText: '荟 · 权益'
3
+}

+ 71
- 0
src/pages/HuiQuanYi/index.vue 파일 보기

@@ -0,0 +1,71 @@
1
+<template>
2
+  <view class="page HuiQuanYi">
3
+    <ScrollY :IsRefreshing="IsRefreshing" @Refresh="Refresh">
4
+
5
+      <!-- banner -->
6
+      <view class="Banner">
7
+        <view>
8
+          <BannerSwiper></BannerSwiper>
9
+        </view>
10
+      </view>
11
+
12
+      <!-- 业主资讯 -->
13
+      <view class="NewsList">
14
+        <view class="flex-h">
15
+          <view class="flex-item">
16
+            <image mode="heightFix" src="https://cjgw.oss-cn-hangzhou.aliyuncs.com/ygcxxfb/image/yezhuzixun.png"></image>
17
+          </view>
18
+          <navigator url="./OwnersNews/index" hover-class="other-navigator-hover" class="More">更多 <text class="iconfont iconjiantouright"></text></navigator>
19
+        </view>
20
+        <view class="List">
21
+          <navigator v-for="(item, index) in 10" class="flex-h" :key="index" url="./OwnersNews/NewsDetail/index" hover-class="other-navigator-hover">
22
+            <view class="Num"><text>{{index + 1}}</text></view>
23
+            <view class="flex-item">
24
+              <text>资讯标题</text>
25
+              <text>1234</text>
26
+            </view>
27
+          </navigator>
28
+        </view>
29
+      </view>
30
+
31
+    </ScrollY>
32
+  </view>
33
+</template>
34
+
35
+<script>
36
+import ScrollY from '../../components/ScrollY/index'
37
+import BannerSwiper from '../../components/BannerSwiper/index'
38
+export default {
39
+  name: 'HuiQuanYi',
40
+  data () {
41
+    return {
42
+      IsRefreshing: false,
43
+      DataLock: false
44
+    }
45
+  },
46
+  components: {
47
+    ScrollY,
48
+    BannerSwiper
49
+  },
50
+  created () {
51
+    this.Init()
52
+  },
53
+  methods: {
54
+    Init () {
55
+    },
56
+    Refresh (e) {
57
+      if (this.DataLock) return
58
+      this.DataLock = true
59
+      this.IsRefreshing = true
60
+      setTimeout(() => {
61
+        this.IsRefreshing = false
62
+        this.DataLock = false
63
+      }, 1000)
64
+    }
65
+  }
66
+}
67
+</script>
68
+
69
+<style lang="scss">
70
+@import "page.scss";
71
+</style>

+ 134
- 0
src/pages/HuiQuanYi/page.scss 파일 보기

@@ -0,0 +1,134 @@
1
+.page.HuiQuanYi {
2
+  width: 100%;
3
+  height: 100%;
4
+  .Banner {
5
+    width: 100%;
6
+    padding-bottom: 38%;
7
+    position: relative;
8
+    overflow: hidden;
9
+    > view {
10
+      width: 100%;
11
+      position: absolute;
12
+      left: 0;
13
+      top: 0;
14
+      bottom: 0;
15
+      overflow: hidden;
16
+      background: #ccc;
17
+    }
18
+  }
19
+  .NewsList {
20
+    padding: 20px 0;
21
+    background: #fff;
22
+    margin-top: 20px;
23
+    > .flex-h {
24
+      padding: 0 20px;
25
+      align-items: center;
26
+      margin-top: 10px;
27
+      > .flex-item {
28
+        > image {
29
+          height: 48px;
30
+        }
31
+      }
32
+      > .More {
33
+        font-size: 26px;
34
+        color: #999;
35
+        > text {
36
+          font-size: 26px;
37
+        }
38
+      }
39
+    }
40
+    > .List {
41
+      position: relative;
42
+      overflow: hidden;
43
+      margin-top: 40px;
44
+      margin-bottom: 30px;
45
+      > .flex-h {
46
+        align-items: center;
47
+        &:nth-child(1) {
48
+          > .Num {
49
+            > text {
50
+              width: 40px;
51
+              text-align: center;
52
+              line-height: 40px;
53
+              display: inline-block;
54
+              border-radius: 100%;
55
+              background: #fe4e45;
56
+              color: #fff;
57
+              box-shadow: 0 10px 20px 5px rgba(254, 78, 69, 0.1);
58
+            }
59
+          }
60
+        }
61
+        &:nth-child(2) {
62
+          > .Num {
63
+            > text {
64
+              display: inline-block;
65
+              width: 40px;
66
+              text-align: center;
67
+              line-height: 40px;
68
+              display: inline-block;
69
+              border-radius: 100%;
70
+              background: #fe7e48;
71
+              color: #fff;
72
+              box-shadow: 0 10px 20px 5px rgba(254, 126, 72, 0.1);
73
+            }
74
+          }
75
+        }
76
+        &:nth-child(3) {
77
+          > .Num {
78
+            > text {
79
+              width: 40px;
80
+              text-align: center;
81
+              line-height: 40px;
82
+              display: inline-block;
83
+              border-radius: 100%;
84
+              background: #ffa93a;
85
+              color: #fff;
86
+              box-shadow: 0 10px 20px 5px rgba(255, 169, 58, 0.1);
87
+            }
88
+          }
89
+        }
90
+        > .Num {
91
+          width: 56px;
92
+          margin-left: 10px;
93
+          text-align: center;
94
+          font-size: 0;
95
+          height: 40px;
96
+          overflow: visible;
97
+          > text {
98
+            font-size: 24px;
99
+            color: #999;
100
+          }
101
+        }
102
+        > .flex-item {
103
+          padding: 20px 0;
104
+          margin-left: 10px;
105
+          border-bottom: 2px solid #f5f5f5;
106
+          font-size: 0;
107
+          white-space: nowrap;
108
+          margin-top: 10px;
109
+          > text {
110
+            display: inline-block;
111
+            vertical-align: middle;
112
+            max-width: 100%;
113
+            font-size: 28px;
114
+            line-height: 1.5;
115
+            white-space: nowrap;
116
+            overflow: hidden;
117
+            text-overflow: ellipsis;
118
+            &:nth-child(1) {
119
+              max-width: 88%;
120
+              white-space: nowrap;
121
+              overflow: hidden;
122
+              text-overflow: ellipsis;
123
+            }
124
+            &:nth-child(2) {
125
+              color: #999;
126
+              width: 10%;
127
+              margin-left: 2%;
128
+            }
129
+          }
130
+        }
131
+      }
132
+    }
133
+  }
134
+}

+ 3
- 0
src/pages/HuiShengHuo/ActivityList/ActivityDetail/JoinIn/index.config.js 파일 보기

@@ -0,0 +1,3 @@
1
+export default {
2
+  navigationBarTitleText: '活动报名'
3
+}

+ 31
- 0
src/pages/HuiShengHuo/ActivityList/ActivityDetail/JoinIn/index.vue 파일 보기

@@ -0,0 +1,31 @@
1
+<template>
2
+  <view class="page">
3
+    活动报名
4
+  </view>
5
+</template>
6
+
7
+<script>
8
+
9
+export default {
10
+  name: 'JoinIn',
11
+  data () {
12
+    return {
13
+
14
+    }
15
+  },
16
+  components: {
17
+  },
18
+  created () {
19
+    this.Init()
20
+  },
21
+  methods: {
22
+    Init () {
23
+    }
24
+  }
25
+}
26
+</script>
27
+
28
+<style lang="scss">
29
+@import "page.scss";
30
+</style>
31
+ 

+ 3
- 0
src/pages/HuiShengHuo/ActivityList/ActivityDetail/JoinIn/page.scss 파일 보기

@@ -0,0 +1,3 @@
1
+.page {
2
+  width: 100%;
3
+}

+ 3
- 0
src/pages/HuiShengHuo/ActivityList/ActivityDetail/Vote/index.config.js 파일 보기

@@ -0,0 +1,3 @@
1
+export default {
2
+  navigationBarTitleText: '活动投票'
3
+}

+ 31
- 0
src/pages/HuiShengHuo/ActivityList/ActivityDetail/Vote/index.vue 파일 보기

@@ -0,0 +1,31 @@
1
+<template>
2
+  <view class="page">
3
+    活动投票
4
+  </view>
5
+</template>
6
+
7
+<script>
8
+
9
+export default {
10
+  name: 'Vote',
11
+  data () {
12
+    return {
13
+
14
+    }
15
+  },
16
+  components: {
17
+  },
18
+  created () {
19
+    this.Init()
20
+  },
21
+  methods: {
22
+    Init () {
23
+    }
24
+  }
25
+}
26
+</script>
27
+
28
+<style lang="scss">
29
+@import "page.scss";
30
+</style>
31
+ 

+ 3
- 0
src/pages/HuiShengHuo/ActivityList/ActivityDetail/Vote/page.scss 파일 보기

@@ -0,0 +1,3 @@
1
+.page {
2
+  width: 100%;
3
+}

+ 3
- 0
src/pages/HuiShengHuo/ActivityList/ActivityDetail/index.config.js 파일 보기

@@ -0,0 +1,3 @@
1
+export default {
2
+  navigationBarTitleText: '活动详情'
3
+}

+ 31
- 0
src/pages/HuiShengHuo/ActivityList/ActivityDetail/index.vue 파일 보기

@@ -0,0 +1,31 @@
1
+<template>
2
+  <view class="page">
3
+    活动详情
4
+  </view>
5
+</template>
6
+
7
+<script>
8
+
9
+export default {
10
+  name: 'ActivityDetail',
11
+  data () {
12
+    return {
13
+
14
+    }
15
+  },
16
+  components: {
17
+  },
18
+  created () {
19
+    this.Init()
20
+  },
21
+  methods: {
22
+    Init () {
23
+    }
24
+  }
25
+}
26
+</script>
27
+
28
+<style lang="scss">
29
+@import "page.scss";
30
+</style>
31
+ 

+ 3
- 0
src/pages/HuiShengHuo/ActivityList/ActivityDetail/page.scss 파일 보기

@@ -0,0 +1,3 @@
1
+.page {
2
+  width: 100%;
3
+}

+ 3
- 0
src/pages/HuiShengHuo/ActivityList/index.config.js 파일 보기

@@ -0,0 +1,3 @@
1
+export default {
2
+  navigationBarTitleText: '精彩活动'
3
+}

+ 84
- 0
src/pages/HuiShengHuo/ActivityList/index.vue 파일 보기

@@ -0,0 +1,84 @@
1
+<template>
2
+  <view class="page JingCaiHuoDong flex-v">
3
+
4
+    <!-- Nav -->
5
+    <view class="NavContainer">
6
+      <scroll-view scroll-x="true">
7
+        <view class="NavX">
8
+          <image mode="heightFix" src="https://cjgw.oss-cn-hangzhou.aliyuncs.com/ygcxxfb/image/jingcaihuodong.png"></image>
9
+          <view v-for="(item, index) in NavList" :key="index">{{item.name}}</view>
10
+        </view>
11
+      </scroll-view>
12
+    </view>
13
+
14
+    <!-- 列表 -->
15
+    <view class="flex-item">
16
+      <ScrollY :IsRefreshing="IsRefreshing" @Refresh="Refresh">
17
+
18
+        <view class="ActivityList">
19
+          <view class="List">
20
+            <view class="Item" v-for="(item, index) in 20" :key="index">
21
+              <view class="Img"></view>
22
+              <view class="Info">
23
+                <text>活动名称</text>
24
+                <view class="flex-h">
25
+                  <text class="flex-item">参与截止时间:2020-08-20 16:00</text>
26
+                  <navigator url="./ActivityList/ActivityDetail/index" hover-class="other-navigator-hover" class="Btn">立即报名</navigator>
27
+                  <navigator url="./ActivityList/ActivityDetail/index" hover-class="other-navigator-hover" class="Btn">立即投票</navigator>
28
+                  <view>已结束</view>
29
+                </view>
30
+              </view>
31
+            </view>
32
+          <view style="width: 100%; height: 20px;"></view>
33
+          </view>
34
+        </view>
35
+
36
+      </ScrollY>
37
+    </view>
38
+  </view>
39
+</template>
40
+
41
+<script>
42
+import ScrollY from '../../../components/ScrollY/index'
43
+export default {
44
+  name: 'JingCaiHuoDong',
45
+  data () {
46
+    return {
47
+      IsRefreshing: false,
48
+      DataLock: false,
49
+      NavList: [
50
+        { name: '导航1', id: '1' },
51
+        { name: '导航2', id: '2' },
52
+        { name: '导航3', id: '3' },
53
+        { name: '导航4', id: '4' },
54
+        { name: '导航5', id: '5' },
55
+        { name: '导航6', id: '6' },
56
+        { name: '导航7', id: '7' }
57
+      ]
58
+    }
59
+  },
60
+  components: {
61
+    ScrollY
62
+  },
63
+  created () {
64
+    this.Init()
65
+  },
66
+  methods: {
67
+    Init () {
68
+    },
69
+    Refresh (e) {
70
+      if (this.DataLock) return
71
+      this.DataLock = true
72
+      this.IsRefreshing = true
73
+      setTimeout(() => {
74
+        this.IsRefreshing = false
75
+        this.DataLock = false
76
+      }, 1000)
77
+    }
78
+  }
79
+}
80
+</script>
81
+
82
+<style lang="scss">
83
+@import "page.scss";
84
+</style>

+ 109
- 0
src/pages/HuiShengHuo/ActivityList/page.scss 파일 보기

@@ -0,0 +1,109 @@
1
+.page.JingCaiHuoDong {
2
+  width: 100%;
3
+  height: 100%;
4
+  background: #fff;
5
+  > .NavContainer {
6
+    width: 100%;
7
+    position: relative;
8
+    overflow: hidden;
9
+    margin-top: 40px;
10
+    padding-bottom: 20px;
11
+    > scroll-view {
12
+      position: relative;
13
+      .NavX {
14
+        font-size: 0;
15
+        white-space: nowrap;
16
+        > image {
17
+          display: inline-block;
18
+          vertical-align: text-bottom;
19
+          height: 44px;
20
+          margin-left: 20px;
21
+        }
22
+        > view {
23
+          display: inline-block;
24
+          vertical-align: text-bottom;
25
+          font-size: 28px;
26
+          line-height: 30px;
27
+          margin-left: 30px;
28
+          &.active {
29
+            color: #fe4e45;
30
+          }
31
+          &:last-child {
32
+            margin-right: 30px;
33
+          }
34
+        }
35
+      }
36
+    }
37
+  }
38
+  > .flex-item {
39
+    .ActivityList {
40
+      background: #fff;
41
+      > .List {
42
+        position: relative;
43
+        overflow: hidden;
44
+        margin-top: 40px;
45
+        margin-bottom: 30px;
46
+        padding: 0 20px;
47
+        > .Item {
48
+          position: relative;
49
+          overflow: hidden;
50
+          background: #fff;
51
+          border-radius: 20px;
52
+          box-shadow: 0 5px 10px 5px rgba(0, 0, 0, 0.08);
53
+          margin-top: 20px;
54
+          &:first-child {
55
+            margin-top: 0;
56
+          }
57
+          > .Img {
58
+            width: 100%;
59
+            padding-bottom: 55%;
60
+            background: #ccc;
61
+            position: relative;
62
+            overflow: hidden;
63
+          }
64
+          > .Info {
65
+            padding: 20px 34px;
66
+            > text {
67
+              display: block;
68
+              font-size: 32px;
69
+              line-height: 1.5;
70
+            }
71
+            > .flex-h {
72
+              align-items: center;
73
+              margin-top: 20px;
74
+              margin-bottom: 20px;
75
+              overflow: visible;
76
+              > text {
77
+                margin-right: 10px;
78
+                white-space: nowrap;
79
+                overflow: hidden;
80
+                text-overflow: ellipsis;
81
+                font-size: 24px;
82
+                color: #999;
83
+                line-height: 1.5;
84
+              }
85
+              > .Btn {
86
+                font-size: 26px;
87
+                color: #fff;
88
+                background: #fe4e45;
89
+                line-height: 54px;
90
+                border-radius: 54px;
91
+                padding: 0 20px;
92
+                box-shadow: 0 10px 20px 5px rgba(254, 78, 69, 0.3);
93
+              }
94
+              > view {
95
+                font-size: 26px;
96
+                color: #000;
97
+                background: #e5e3e3;
98
+                line-height: 54px;
99
+                border-radius: 54px;
100
+                padding: 0 20px;
101
+                box-shadow: 0 10px 20px 5px rgba(0, 0, 0, 0.1);
102
+              }
103
+            }
104
+          }
105
+        }
106
+      }
107
+    }
108
+  }
109
+}

+ 3
- 0
src/pages/HuiShengHuo/PhotoList/PhotoDetail/index.config.js 파일 보기

@@ -0,0 +1,3 @@
1
+export default {
2
+  navigationBarTitleText: '照片'
3
+}

+ 44
- 0
src/pages/HuiShengHuo/PhotoList/PhotoDetail/index.vue 파일 보기

@@ -0,0 +1,44 @@
1
+<template>
2
+  <view class="page ZhaoPianXiangQing">
3
+    
4
+    <!-- 标题 -->
5
+    <view class="MainTitle">
6
+      <text>照片</text>
7
+      <text class="iconfont iconguanbi"></text>
8
+    </view>
9
+
10
+    <!-- 列表 -->
11
+    <view class="List">
12
+      <view v-for="(item, index) in 10">
13
+        <view class="Img"></view>
14
+        <text>相册描述</text>
15
+      </view>
16
+    </view>
17
+
18
+  </view>
19
+</template>
20
+
21
+<script>
22
+
23
+export default {
24
+  name: 'ZhaoPianXiangQing',
25
+  data () {
26
+    return {
27
+
28
+    }
29
+  },
30
+  components: {
31
+  },
32
+  created () {
33
+    this.Init()
34
+  },
35
+  methods: {
36
+    Init () {
37
+    }
38
+  }
39
+}
40
+</script>
41
+
42
+<style lang="scss">
43
+@import "page.scss";
44
+</style>

+ 66
- 0
src/pages/HuiShengHuo/PhotoList/PhotoDetail/page.scss 파일 보기

@@ -0,0 +1,66 @@
1
+.page.ZhaoPianXiangQing {
2
+  width: 100%;
3
+  height: 100%;
4
+  overflow-y: scroll;
5
+  background: #fff;
6
+  > .MainTitle {
7
+    position: relative;
8
+    overflow: hidden;
9
+    margin-top: 20px;
10
+    > text {
11
+      &:nth-child(1) {
12
+        display: block;
13
+        text-align: center;
14
+        font-size: 52px;
15
+        font-weight: bold;
16
+        line-height: 80px;
17
+        z-index: 1;
18
+        position: relative;
19
+      }
20
+      &:nth-child(2) {
21
+        font-size: 24px;
22
+        display: inline-block;
23
+        position: absolute;
24
+        z-index: 2;
25
+        right: 40px;
26
+        top: 50%;
27
+        transform: translateY(-50%);
28
+        -webkit-transform: translateY(-50%);
29
+      }
30
+    }
31
+  }
32
+  > .List {
33
+    padding: 0 20px;
34
+    > view {
35
+      margin-top: 40px;
36
+      padding-bottom: 30px;
37
+      position: relative;
38
+      overflow: hidden;
39
+      &::after {
40
+        content: "";
41
+        display: block;
42
+        position: absolute;
43
+        width: 90%;
44
+        height: 2px;
45
+        background: #d5d4d3;
46
+        left: 5%;
47
+        bottom: 0;
48
+      }
49
+      > .Img {
50
+        width: 100%;
51
+        padding-bottom: 74%;
52
+        background: #ccc;
53
+        border-radius: 10px;
54
+        position: relative;
55
+        overflow: hidden;
56
+      }
57
+      > text {
58
+        display: block;
59
+        font-size: 24px;
60
+        line-height: 40px;
61
+        text-align: center;
62
+        margin-top: 40px;
63
+      }
64
+    }
65
+  }
66
+}

+ 3
- 0
src/pages/HuiShengHuo/PhotoList/index.config.js 파일 보기

@@ -0,0 +1,3 @@
1
+export default {
2
+  navigationBarTitleText: '活动照片墙'
3
+}

+ 68
- 0
src/pages/HuiShengHuo/PhotoList/index.vue 파일 보기

@@ -0,0 +1,68 @@
1
+<template>
2
+  <view class="page HuoDongZhaoPianQiang">
3
+    <ScrollY :IsRefreshing="IsRefreshing" @Refresh="Refresh">
4
+
5
+      <!-- 活动照片墙 -->
6
+      <view class="PhotoList">
7
+        <view class="flex-h">
8
+          <view class="flex-item">
9
+            <image mode="heightFix" src="https://cjgw.oss-cn-hangzhou.aliyuncs.com/ygcxxfb/image/huodongzhaopianqiang.png"></image>
10
+          </view>
11
+        </view>
12
+        <view class="List">
13
+          <view v-for="(item, index) in List" :key="index">
14
+            <text>{{item.Month}}</text>
15
+            <view>
16
+              <view v-for="(subItem, subIndex) in item.List" :key="subIndex">
17
+                <navigator url="./PhotoDetail/index" hover-class="other-navigator-hover" class="Img"></navigator>
18
+              </view>
19
+            </view>
20
+          </view>
21
+        </view>
22
+      </view>
23
+
24
+    </ScrollY>
25
+  </view>
26
+</template>
27
+
28
+<script>
29
+import ScrollY from '../../../components/ScrollY/index'
30
+export default {
31
+  name: 'HuoDongZhaoPianQiang',
32
+  data () {
33
+    return {
34
+      IsRefreshing: false,
35
+      DataLock: false,
36
+      List: [
37
+        { Month: '8月份', List: ['', '', '', '', '', '', '', '', '', ''] },
38
+        { Month: '7月份', List: ['', '', '', '', '', '', '', '', '', ''] },
39
+        { Month: '6月份', List: ['', '', '', '', '', '', '', '', '', ''] },
40
+        { Month: '5月份', List: ['', '', '', '', '', '', '', '', '', ''] }
41
+      ]
42
+    }
43
+  },
44
+  components: {
45
+    ScrollY
46
+  },
47
+  created () {
48
+    this.Init()
49
+  },
50
+  methods: {
51
+    Init () {
52
+    },
53
+    Refresh (e) {
54
+      if (this.DataLock) return
55
+      this.DataLock = true
56
+      this.IsRefreshing = true
57
+      setTimeout(() => {
58
+        this.IsRefreshing = false
59
+        this.DataLock = false
60
+      }, 1000)
61
+    }
62
+  }
63
+}
64
+</script>
65
+
66
+<style lang="scss">
67
+@import "page.scss";
68
+</style>

+ 68
- 0
src/pages/HuiShengHuo/PhotoList/page.scss 파일 보기

@@ -0,0 +1,68 @@
1
+.page.HuoDongZhaoPianQiang {
2
+  width: 100%;
3
+  height: 100%;
4
+  background: #fff;
5
+  .PhotoList {
6
+    > .flex-h {
7
+      padding: 0 20px;
8
+      align-items: center;
9
+      margin-top: 10px;
10
+      > .flex-item {
11
+        > image {
12
+          height: 52px;
13
+        }
14
+      }
15
+      > .More {
16
+        font-size: 26px;
17
+        color: #999;
18
+        > text {
19
+          font-size: 26px;
20
+        }
21
+      }
22
+    }
23
+    > .List {
24
+      > view {
25
+        > text {
26
+          display: block;
27
+          position: relative;
28
+          overflow: hidden;
29
+          padding: 0 3.5vw;
30
+          font-size: 28px;
31
+          line-height: 40px;
32
+          text-indent: 20px;
33
+          margin-top: 20px;
34
+          &::after {
35
+            content: "";
36
+            display: block;
37
+            width: 8px;
38
+            height: 30px;
39
+            background: #fddd39;
40
+            position: absolute;
41
+            left: 3.5vw;
42
+            top: 5px;
43
+          }
44
+        }
45
+        > view {
46
+          font-size: 0;
47
+          margin-top: 20px;
48
+          > view {
49
+            display: inline-block;
50
+            vertical-align: middle;
51
+            width: 44.75vw;
52
+            margin-left: 3.5vw;
53
+            margin-bottom: 3.5vw;
54
+            > .Img {
55
+              width: 100%;
56
+              display: block;
57
+              padding-bottom: 84%;
58
+              background: #ccc;
59
+              position: relative;
60
+              overflow: hidden;
61
+              border-radius: 10px;
62
+            }
63
+          }
64
+        }
65
+      }
66
+    }
67
+  }
68
+}

+ 3
- 0
src/pages/HuiShengHuo/index.config.js 파일 보기

@@ -0,0 +1,3 @@
1
+export default {
2
+  navigationBarTitleText: '荟 · 生活'
3
+}

+ 0
- 0
src/pages/HuiShengHuo/index.vue 파일 보기


이 변경점에서 너무 많은 파일들이 변경되어 몇몇 파일들은 표시되지 않았습니다.