正在显示
10 个修改的文件
包含
516 行增加
和
117 行删除
@@ -2589,6 +2589,16 @@ | @@ -2589,6 +2589,16 @@ | ||
2589 | "integrity": "sha1-ACwZkJEtDVlYDJO9NsBW3pnkJZo=", | 2589 | "integrity": "sha1-ACwZkJEtDVlYDJO9NsBW3pnkJZo=", |
2590 | "dev": true | 2590 | "dev": true |
2591 | }, | 2591 | }, |
2592 | + "clipboard": { | ||
2593 | + "version": "2.0.6", | ||
2594 | + "resolved": "https://registry.npm.taobao.org/clipboard/download/clipboard-2.0.6.tgz", | ||
2595 | + "integrity": "sha1-UpISlu7A/fd+rRdJQhshyWhkc3Y=", | ||
2596 | + "requires": { | ||
2597 | + "good-listener": "^1.2.2", | ||
2598 | + "select": "^1.1.2", | ||
2599 | + "tiny-emitter": "^2.0.0" | ||
2600 | + } | ||
2601 | + }, | ||
2592 | "cliui": { | 2602 | "cliui": { |
2593 | "version": "4.1.0", | 2603 | "version": "4.1.0", |
2594 | "resolved": "https://registry.npm.taobao.org/cliui/download/cliui-4.1.0.tgz", | 2604 | "resolved": "https://registry.npm.taobao.org/cliui/download/cliui-4.1.0.tgz", |
@@ -4314,6 +4324,11 @@ | @@ -4314,6 +4324,11 @@ | ||
4314 | "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", | 4324 | "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", |
4315 | "dev": true | 4325 | "dev": true |
4316 | }, | 4326 | }, |
4327 | + "delegate": { | ||
4328 | + "version": "3.2.0", | ||
4329 | + "resolved": "https://registry.npm.taobao.org/delegate/download/delegate-3.2.0.tgz", | ||
4330 | + "integrity": "sha1-tmtxwxWFIuirV0T3INjKDCr1kWY=" | ||
4331 | + }, | ||
4317 | "depd": { | 4332 | "depd": { |
4318 | "version": "1.1.2", | 4333 | "version": "1.1.2", |
4319 | "resolved": "https://registry.npm.taobao.org/depd/download/depd-1.1.2.tgz", | 4334 | "resolved": "https://registry.npm.taobao.org/depd/download/depd-1.1.2.tgz", |
@@ -5553,6 +5568,14 @@ | @@ -5553,6 +5568,14 @@ | ||
5553 | "pinkie-promise": "^2.0.0" | 5568 | "pinkie-promise": "^2.0.0" |
5554 | } | 5569 | } |
5555 | }, | 5570 | }, |
5571 | + "good-listener": { | ||
5572 | + "version": "1.2.2", | ||
5573 | + "resolved": "https://registry.npm.taobao.org/good-listener/download/good-listener-1.2.2.tgz", | ||
5574 | + "integrity": "sha1-1TswzfkxPf+33JoNR3CWqm0UXFA=", | ||
5575 | + "requires": { | ||
5576 | + "delegate": "^3.1.2" | ||
5577 | + } | ||
5578 | + }, | ||
5556 | "graceful-fs": { | 5579 | "graceful-fs": { |
5557 | "version": "4.2.4", | 5580 | "version": "4.2.4", |
5558 | "resolved": "https://registry.npm.taobao.org/graceful-fs/download/graceful-fs-4.2.4.tgz?cache=0&sync_timestamp=1588086905523&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fgraceful-fs%2Fdownload%2Fgraceful-fs-4.2.4.tgz", | 5581 | "resolved": "https://registry.npm.taobao.org/graceful-fs/download/graceful-fs-4.2.4.tgz?cache=0&sync_timestamp=1588086905523&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fgraceful-fs%2Fdownload%2Fgraceful-fs-4.2.4.tgz", |
@@ -12621,6 +12644,11 @@ | @@ -12621,6 +12644,11 @@ | ||
12621 | } | 12644 | } |
12622 | } | 12645 | } |
12623 | }, | 12646 | }, |
12647 | + "select": { | ||
12648 | + "version": "1.1.2", | ||
12649 | + "resolved": "https://registry.npm.taobao.org/select/download/select-1.1.2.tgz", | ||
12650 | + "integrity": "sha1-DnNQrN7ICxEIUoeG7B1EGNEbOW0=" | ||
12651 | + }, | ||
12624 | "select-hose": { | 12652 | "select-hose": { |
12625 | "version": "2.0.0", | 12653 | "version": "2.0.0", |
12626 | "resolved": "https://registry.npm.taobao.org/select-hose/download/select-hose-2.0.0.tgz", | 12654 | "resolved": "https://registry.npm.taobao.org/select-hose/download/select-hose-2.0.0.tgz", |
@@ -13645,6 +13673,11 @@ | @@ -13645,6 +13673,11 @@ | ||
13645 | "integrity": "sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q=", | 13673 | "integrity": "sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q=", |
13646 | "dev": true | 13674 | "dev": true |
13647 | }, | 13675 | }, |
13676 | + "tiny-emitter": { | ||
13677 | + "version": "2.1.0", | ||
13678 | + "resolved": "https://registry.npm.taobao.org/tiny-emitter/download/tiny-emitter-2.1.0.tgz", | ||
13679 | + "integrity": "sha1-HRpW7fxRxD6GPLtTgqcjMONVVCM=" | ||
13680 | + }, | ||
13648 | "tmpl": { | 13681 | "tmpl": { |
13649 | "version": "1.0.4", | 13682 | "version": "1.0.4", |
13650 | "resolved": "https://registry.npm.taobao.org/tmpl/download/tmpl-1.0.4.tgz", | 13683 | "resolved": "https://registry.npm.taobao.org/tmpl/download/tmpl-1.0.4.tgz", |
@@ -14216,6 +14249,14 @@ | @@ -14216,6 +14249,14 @@ | ||
14216 | "resolved": "https://registry.npm.taobao.org/vue/download/vue-2.6.11.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fvue%2Fdownload%2Fvue-2.6.11.tgz", | 14249 | "resolved": "https://registry.npm.taobao.org/vue/download/vue-2.6.11.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fvue%2Fdownload%2Fvue-2.6.11.tgz", |
14217 | "integrity": "sha1-dllNh31LEiNEBuhONSdcbVFBJcU=" | 14250 | "integrity": "sha1-dllNh31LEiNEBuhONSdcbVFBJcU=" |
14218 | }, | 14251 | }, |
14252 | + "vue-clipboard2": { | ||
14253 | + "version": "0.3.1", | ||
14254 | + "resolved": "https://registry.npm.taobao.org/vue-clipboard2/download/vue-clipboard2-0.3.1.tgz", | ||
14255 | + "integrity": "sha1-blUft704SImyiw2jsSKJ7WvKSJQ=", | ||
14256 | + "requires": { | ||
14257 | + "clipboard": "^2.0.0" | ||
14258 | + } | ||
14259 | + }, | ||
14219 | "vue-hot-reload-api": { | 14260 | "vue-hot-reload-api": { |
14220 | "version": "2.3.4", | 14261 | "version": "2.3.4", |
14221 | "resolved": "https://registry.npm.taobao.org/vue-hot-reload-api/download/vue-hot-reload-api-2.3.4.tgz", | 14262 | "resolved": "https://registry.npm.taobao.org/vue-hot-reload-api/download/vue-hot-reload-api-2.3.4.tgz", |
@@ -14,8 +14,10 @@ | @@ -14,8 +14,10 @@ | ||
14 | }, | 14 | }, |
15 | "dependencies": { | 15 | "dependencies": { |
16 | "axios": "^0.19.2", | 16 | "axios": "^0.19.2", |
17 | + "clipboard": "^2.0.6", | ||
17 | "vant": "^2.9.2", | 18 | "vant": "^2.9.2", |
18 | "vue": "^2.5.2", | 19 | "vue": "^2.5.2", |
20 | + "vue-clipboard2": "^0.3.1", | ||
19 | "vue-router": "^3.0.1", | 21 | "vue-router": "^3.0.1", |
20 | "weixin-js-sdk": "^1.6.0" | 22 | "weixin-js-sdk": "^1.6.0" |
21 | }, | 23 | }, |
src/assets/diankong.png
0 → 100644
978 字节
src/assets/starkong.png
0 → 100644
1.4 KB
@@ -7,7 +7,11 @@ | @@ -7,7 +7,11 @@ | ||
7 | <img src="../../../assets/search.png" alt /> | 7 | <img src="../../../assets/search.png" alt /> |
8 | </div> | 8 | </div> |
9 | 9 | ||
10 | - <input type="text" placeholder="搜索你感兴趣的课程文章" class="searchtext" /> | 10 | + <input |
11 | + type="text" | ||
12 | + placeholder="搜索你感兴趣的课程文章" | ||
13 | + class="searchtext" | ||
14 | + /> | ||
11 | </div> | 15 | </div> |
12 | </div> | 16 | </div> |
13 | <!-- 课程列表 --> | 17 | <!-- 课程列表 --> |
@@ -57,17 +61,21 @@ | @@ -57,17 +61,21 @@ | ||
57 | :class="selnav == 0 ? 'selactive' : ''" | 61 | :class="selnav == 0 ? 'selactive' : ''" |
58 | :data-id="0" | 62 | :data-id="0" |
59 | @click="selectnav" | 63 | @click="selectnav" |
60 | - >音频课程</div> | 64 | + > |
65 | + 音频课程 | ||
66 | + </div> | ||
61 | <div | 67 | <div |
62 | class="coursenavleft" | 68 | class="coursenavleft" |
63 | :class="selnav == 1 ? 'selactive' : ''" | 69 | :class="selnav == 1 ? 'selactive' : ''" |
64 | :data-id="1" | 70 | :data-id="1" |
65 | @click="selectnav" | 71 | @click="selectnav" |
66 | - >营养小知识</div> | 72 | + > |
73 | + 营养小知识 | ||
74 | + </div> | ||
67 | </div> | 75 | </div> |
68 | <!-- 课程 --> | 76 | <!-- 课程 --> |
69 | <div v-if="selnav == 0"> | 77 | <div v-if="selnav == 0"> |
70 | - <div class="nodata" v-if="videolist.length==0">暂无数据</div> | 78 | + <div class="nodata" v-if="videolist.length == 0">暂无数据</div> |
71 | <van-list | 79 | <van-list |
72 | class="courseboxk" | 80 | class="courseboxk" |
73 | v-model="loading" | 81 | v-model="loading" |
@@ -81,9 +89,9 @@ | @@ -81,9 +89,9 @@ | ||
81 | <img :src="item.image" alt /> | 89 | <img :src="item.image" alt /> |
82 | </div> | 90 | </div> |
83 | <div class="coursetext"> | 91 | <div class="coursetext"> |
84 | - <div class="coursetitle">{{item.title}}</div> | ||
85 | - <div class="coursename">{{item.description}}</div> | ||
86 | - <div class="courseteacher">{{item.user.nickname}}</div> | 92 | + <div class="coursetitle">{{ item.title }}</div> |
93 | + <div class="coursename">{{ item.description }}</div> | ||
94 | + <div class="courseteacher">{{ item.user.nickname }}</div> | ||
87 | </div> | 95 | </div> |
88 | </div> | 96 | </div> |
89 | </van-list> | 97 | </van-list> |
@@ -91,7 +99,7 @@ | @@ -91,7 +99,7 @@ | ||
91 | 99 | ||
92 | <!-- 营养小知识 --> | 100 | <!-- 营养小知识 --> |
93 | <div v-if="selnav == 1"> | 101 | <div v-if="selnav == 1"> |
94 | - <div class="nodata" v-if="yinglist.length==0">暂无数据</div> | 102 | + <div class="nodata" v-if="yinglist.length == 0">暂无数据</div> |
95 | <van-list | 103 | <van-list |
96 | class="courseboxk" | 104 | class="courseboxk" |
97 | v-model="loadingying" | 105 | v-model="loadingying" |
@@ -122,9 +130,9 @@ | @@ -122,9 +130,9 @@ | ||
122 | </template> | 130 | </template> |
123 | 131 | ||
124 | <script> | 132 | <script> |
125 | -import Vue from 'vue'; | 133 | +import Vue from "vue"; |
126 | import tabBar from "@/components/views/tabBar.vue"; | 134 | import tabBar from "@/components/views/tabBar.vue"; |
127 | -import { List } from 'vant'; | 135 | +import { List } from "vant"; |
128 | Vue.use(List); | 136 | Vue.use(List); |
129 | export default { | 137 | export default { |
130 | components: { | 138 | components: { |
@@ -141,13 +149,12 @@ export default { | @@ -141,13 +149,12 @@ export default { | ||
141 | finishedying: false, | 149 | finishedying: false, |
142 | yinglist: [], | 150 | yinglist: [], |
143 | videopage: 1, | 151 | videopage: 1, |
144 | - this_page: '', | ||
145 | - total_page: '' | ||
146 | - | 152 | + this_page: "", |
153 | + total_page: "" | ||
147 | }; | 154 | }; |
148 | }, | 155 | }, |
149 | created() { | 156 | created() { |
150 | - this.getvideolist() | 157 | + this.getvideolist(); |
151 | }, | 158 | }, |
152 | methods: { | 159 | methods: { |
153 | // 视频上拉加载 | 160 | // 视频上拉加载 |
@@ -156,13 +163,13 @@ export default { | @@ -156,13 +163,13 @@ export default { | ||
156 | // 异步更新数据 | 163 | // 异步更新数据 |
157 | // setTimeout 仅做示例,真实场景中一般为 ajax 请求 | 164 | // setTimeout 仅做示例,真实场景中一般为 ajax 请求 |
158 | setTimeout(() => { | 165 | setTimeout(() => { |
159 | - console.log(3434) | 166 | + console.log(3434); |
160 | 167 | ||
161 | - let newvideopage = that.videopage | 168 | + let newvideopage = that.videopage; |
162 | newvideopage++; | 169 | newvideopage++; |
163 | that.videopage = newvideopage; | 170 | that.videopage = newvideopage; |
164 | - console.log(that.videopage) | ||
165 | - that.getvideolist() | 171 | + console.log(that.videopage); |
172 | + that.getvideolist(); | ||
166 | 173 | ||
167 | // 加载状态结束 | 174 | // 加载状态结束 |
168 | this.loading = false; | 175 | this.loading = false; |
@@ -179,13 +186,13 @@ export default { | @@ -179,13 +186,13 @@ export default { | ||
179 | // 异步更新数据 | 186 | // 异步更新数据 |
180 | // setTimeout 仅做示例,真实场景中一般为 ajax 请求 | 187 | // setTimeout 仅做示例,真实场景中一般为 ajax 请求 |
181 | setTimeout(() => { | 188 | setTimeout(() => { |
182 | - console.log(3434) | 189 | + console.log(3434); |
183 | 190 | ||
184 | - let newvideopage = that.videopage | 191 | + let newvideopage = that.videopage; |
185 | newvideopage++; | 192 | newvideopage++; |
186 | that.videopage = newvideopage; | 193 | that.videopage = newvideopage; |
187 | - console.log(that.videopage) | ||
188 | - that.getyingyang() | 194 | + console.log(that.videopage); |
195 | + that.getyingyang(); | ||
189 | 196 | ||
190 | // 加载状态结束 | 197 | // 加载状态结束 |
191 | this.loadingying = false; | 198 | this.loadingying = false; |
@@ -204,14 +211,13 @@ export default { | @@ -204,14 +211,13 @@ export default { | ||
204 | page: that.videopage | 211 | page: that.videopage |
205 | }; | 212 | }; |
206 | 213 | ||
207 | - | ||
208 | that.$axios | 214 | that.$axios |
209 | .post(url, param, Headers) | 215 | .post(url, param, Headers) |
210 | .then(res => { | 216 | .then(res => { |
211 | console.log(res, "列表"); | 217 | console.log(res, "列表"); |
212 | - that.videolist = that.videolist.concat(res.data.lesson) | 218 | + that.videolist = that.videolist.concat(res.data.lesson); |
213 | that.total_page = res.data.total_page; | 219 | that.total_page = res.data.total_page; |
214 | - that.this_page = res.data.this_page | 220 | + that.this_page = res.data.this_page; |
215 | }) | 221 | }) |
216 | .catch(err => { | 222 | .catch(err => { |
217 | console.log(err); | 223 | console.log(err); |
@@ -223,7 +229,7 @@ export default { | @@ -223,7 +229,7 @@ export default { | ||
223 | }, | 229 | }, |
224 | // 获取营养知识 | 230 | // 获取营养知识 |
225 | getyingyang() { | 231 | getyingyang() { |
226 | - console.log(9999) | 232 | + console.log(9999); |
227 | let that = this; | 233 | let that = this; |
228 | var url = "/api/index/knowledge_list"; | 234 | var url = "/api/index/knowledge_list"; |
229 | let param = { | 235 | let param = { |
@@ -233,14 +239,13 @@ export default { | @@ -233,14 +239,13 @@ export default { | ||
233 | .post(url, param) | 239 | .post(url, param) |
234 | .then(res => { | 240 | .then(res => { |
235 | console.log(res, "列表"); | 241 | console.log(res, "列表"); |
236 | - that.yinglist = that.yinglist.concat(res.data.knowledge) | 242 | + that.yinglist = that.yinglist.concat(res.data.knowledge); |
237 | that.total_page = res.data.total_page; | 243 | that.total_page = res.data.total_page; |
238 | - that.this_page = res.data.this_page | 244 | + that.this_page = res.data.this_page; |
239 | }) | 245 | }) |
240 | .catch(err => { | 246 | .catch(err => { |
241 | console.log(err); | 247 | console.log(err); |
242 | 248 | ||
243 | - | ||
244 | // setTimeout(function () { | 249 | // setTimeout(function () { |
245 | // that.$router.go(-1) | 250 | // that.$router.go(-1) |
246 | // }) | 251 | // }) |
@@ -256,19 +261,19 @@ export default { | @@ -256,19 +261,19 @@ export default { | ||
256 | selectnav(e) { | 261 | selectnav(e) { |
257 | let that = this; | 262 | let that = this; |
258 | this.selnav = e.currentTarget.dataset.id; | 263 | this.selnav = e.currentTarget.dataset.id; |
259 | - console.log(this.selnav) | 264 | + console.log(this.selnav); |
260 | if (this.selnav == 0) { | 265 | if (this.selnav == 0) { |
261 | - that.total_page = '' | ||
262 | - that.this_page = '' | ||
263 | - that.videopage = 1 | ||
264 | - that.videolist = [] | ||
265 | - this.getvideolist() | 266 | + that.total_page = ""; |
267 | + that.this_page = ""; | ||
268 | + that.videopage = 1; | ||
269 | + that.videolist = []; | ||
270 | + this.getvideolist(); | ||
266 | } else if (this.selnav == 1) { | 271 | } else if (this.selnav == 1) { |
267 | - that.total_page = '' | ||
268 | - that.this_page = '' | ||
269 | - this.yinglist = [] | ||
270 | - that.videopage = 1 | ||
271 | - this.getyingyang() | 272 | + that.total_page = ""; |
273 | + that.this_page = ""; | ||
274 | + this.yinglist = []; | ||
275 | + that.videopage = 1; | ||
276 | + this.getyingyang(); | ||
272 | } | 277 | } |
273 | } | 278 | } |
274 | } | 279 | } |
@@ -3,30 +3,43 @@ | @@ -3,30 +3,43 @@ | ||
3 | <div class="topcontainer"> | 3 | <div class="topcontainer"> |
4 | <div class="publishitem flextwo" @click="selectkind"> | 4 | <div class="publishitem flextwo" @click="selectkind"> |
5 | <div class="publeft flexone"> | 5 | <div class="publeft flexone"> |
6 | - <div class="kindname">{{kindname}}</div> | ||
7 | - <div class="pubpicker" v-if="false"> | ||
8 | - <van-picker | ||
9 | - show-toolbar | ||
10 | - :columns="columns" | ||
11 | - @confirm="onConfirm" | ||
12 | - @cancel="onCancel" | ||
13 | - @change="onChange" | ||
14 | - /> | 6 | + <div class="kindname"> |
7 | + <span class="kindleft">分类</span> | ||
8 | + {{kindname}} | ||
15 | </div> | 9 | </div> |
16 | </div> | 10 | </div> |
17 | 11 | ||
18 | <img src="../../../assets/grayrow.png" alt class="yourow" /> | 12 | <img src="../../../assets/grayrow.png" alt class="yourow" /> |
19 | </div> | 13 | </div> |
20 | <div class="enterkind"> | 14 | <div class="enterkind"> |
21 | - <textarea name id cols="30" rows="10" placeholder="请输入您的想法"></textarea> | 15 | + <textarea name id cols="30" rows="10" placeholder="请输入您的想法" v-model="kindidea"></textarea> |
22 | </div> | 16 | </div> |
23 | - <div class="pubimg"> | 17 | + |
18 | + <div> | ||
19 | + <van-uploader | ||
20 | + v-model="fileList" | ||
21 | + multiple="true" | ||
22 | + :after-read="afterRead" | ||
23 | + :max-count="8" | ||
24 | + @delete="deleftimg" | ||
25 | + /> | ||
26 | + | ||
27 | + <!-- <div class="pubimg"> | ||
24 | <img src="../../../assets/addpub.png" alt /> | 28 | <img src="../../../assets/addpub.png" alt /> |
29 | + </div>--> | ||
25 | </div> | 30 | </div> |
26 | </div> | 31 | </div> |
27 | 32 | ||
28 | - <div class="kaishilu">发布</div> | ||
29 | - | 33 | + <div class="kaishilu" @click="publish">发布</div> |
34 | + <div class="pubpicker" v-if="showkind"> | ||
35 | + <van-picker | ||
36 | + show-toolbar | ||
37 | + :columns="columns" | ||
38 | + @confirm="onConfirm" | ||
39 | + @cancel="onCancel" | ||
40 | + @setValues="getvalue" | ||
41 | + /> | ||
42 | + </div> | ||
30 | <!-- 发布成功 --> | 43 | <!-- 发布成功 --> |
31 | <div class="register" v-if="success"> | 44 | <div class="register" v-if="success"> |
32 | <div class="pubsuccess"> | 45 | <div class="pubsuccess"> |
@@ -39,18 +52,30 @@ | @@ -39,18 +52,30 @@ | ||
39 | 52 | ||
40 | <script> | 53 | <script> |
41 | import Vue from 'vue'; | 54 | import Vue from 'vue'; |
42 | -import { Picker } from 'vant'; | ||
43 | - | 55 | +import { Picker, Uploader, Toast } from 'vant'; |
56 | +import "vant/lib/index.css"; | ||
44 | Vue.use(Picker); | 57 | Vue.use(Picker); |
58 | +Vue.use(Toast); | ||
59 | +Vue.use(Uploader); | ||
45 | export default { | 60 | export default { |
46 | data() { | 61 | data() { |
47 | return { | 62 | return { |
48 | - columns: ['杭州', '宁波', '温州', '嘉兴', '湖州'], | 63 | + columns: [], |
49 | showkind: false, | 64 | showkind: false, |
50 | - kindname: '分类一', | ||
51 | - success: false | 65 | + kindname: '请选择分类', |
66 | + success: false, | ||
67 | + kindidea: '', | ||
68 | + fileList: [], | ||
69 | + images: [], | ||
70 | + chuanimage: [], | ||
71 | + delimg: [], | ||
72 | + sort: [], | ||
73 | + sort_id: '' | ||
52 | } | 74 | } |
53 | }, | 75 | }, |
76 | + created() { | ||
77 | + this.getkindlist() | ||
78 | + }, | ||
54 | methods: { | 79 | methods: { |
55 | selectkind() { | 80 | selectkind() { |
56 | this.showkind = true | 81 | this.showkind = true |
@@ -63,26 +88,147 @@ export default { | @@ -63,26 +88,147 @@ export default { | ||
63 | onConfirm(value, index) { | 88 | onConfirm(value, index) { |
64 | console.log(78343784) | 89 | console.log(78343784) |
65 | this.showkind = false | 90 | this.showkind = false |
66 | - console.log(this.showkind) | 91 | + this.kindname = value |
92 | + this.sort_id = this.sort[index].id | ||
67 | 93 | ||
68 | }, | 94 | }, |
69 | - onChange(picker, value, index) { | ||
70 | 95 | ||
71 | - }, | ||
72 | sure() { | 96 | sure() { |
73 | this.success = false | 97 | this.success = false |
74 | }, | 98 | }, |
99 | + // 上传图片 | ||
100 | + afterRead(file) { | ||
101 | + let that = this; | ||
102 | + console.log(file) | ||
103 | + console.log(file.length) | ||
104 | + if (file.length == undefined) { | ||
105 | + var formdata = new FormData(); | ||
106 | + formdata.append("file", file.file); | ||
107 | + that.delimg.push(file.file.name) | ||
108 | + var url = "/api/common/upload"; | ||
109 | + let param = { | ||
110 | + id: 1 | ||
111 | + } | ||
112 | + | ||
113 | + that | ||
114 | + .$uploadFile.post(url, formdata) | ||
115 | + .then(function (res) { | ||
116 | + console.log(res); | ||
117 | + that.cardzheng = false | ||
118 | + let url = "http://tangyuanji.t.brotop.cn" + res.data.url; | ||
119 | + that.images.push(url); | ||
120 | + that.chuanimage.push(res.data.url); | ||
121 | + | ||
122 | + | ||
123 | + }) | ||
124 | + .catch(err => { | ||
125 | + console.log(err); | ||
126 | + }); | ||
127 | + | ||
128 | + } else { | ||
129 | + for (var i = 0; i < file.length; i++) { | ||
130 | + console.log(file[i].file) | ||
131 | + | ||
132 | + var formdata = new FormData(); | ||
133 | + formdata.append("file", file[i].file); | ||
134 | + that.delimg.push(file[i].file.name) | ||
135 | + | ||
136 | + var url = "/api/common/upload"; | ||
137 | + | ||
138 | + that | ||
139 | + .$uploadFile.post(url, formdata) | ||
140 | + .then(function (res) { | ||
141 | + console.log(res); | ||
142 | + that.cardzheng = false | ||
143 | + let url = "http://tangyuanji.t.brotop.cn" + res.data.url; | ||
144 | + that.images.push(url); | ||
145 | + that.chuanimage.push(res.data.url); | ||
146 | + | ||
147 | + }) | ||
148 | + .catch(err => { | ||
149 | + console.log(err); | ||
150 | + }); | ||
151 | + } | ||
152 | + | ||
153 | + | ||
154 | + } | ||
155 | + }, | ||
156 | + | ||
157 | + // 删除文件 | ||
158 | + deleftimg(e) { | ||
159 | + let that = this; | ||
160 | + let item = e.file.name | ||
161 | + this.delimg.forEach(function (value, index, array) { | ||
162 | + if (value == item) { | ||
163 | + that.delimg.splice(index, 1); | ||
164 | + that.images.splice(index, 1); | ||
165 | + that.chuanimage.splice(index, 1); | ||
166 | + } | ||
167 | + }); | ||
168 | + this.delimg = this.delimg | ||
169 | + this.images = this.images; | ||
170 | + this.chuanimage = this.chuanimage; | ||
171 | + | ||
172 | + this.$forceUpdate(); | ||
173 | + | ||
174 | + }, | ||
175 | + // 获取分类列表 | ||
176 | + getkindlist() { | ||
177 | + let that = this; | ||
178 | + var url = "/api/social/sort"; | ||
179 | + let param = { | ||
180 | + | ||
181 | + }; | ||
182 | + | ||
183 | + that.$axios | ||
184 | + .post(url, param) | ||
185 | + .then(function (res) { | ||
186 | + console.log(res); | ||
187 | + let data = res.data; | ||
188 | + data.forEach(function (value, index) { | ||
189 | + that.columns.push(value.sort_name) | ||
190 | + }) | ||
191 | + that.columns = that.columns | ||
192 | + that.sort = res.data | ||
193 | + | ||
194 | + | ||
195 | + }) | ||
196 | + .catch(function (err) { | ||
197 | + console.log(err); | ||
198 | + }); | ||
199 | + }, | ||
200 | + getvalue(value) { | ||
201 | + console.log(value) | ||
202 | + }, | ||
203 | + // 发布 | ||
75 | publish() { | 204 | publish() { |
76 | let that = this; | 205 | let that = this; |
77 | - var url = "/api/user/authorize"; | 206 | + var url = "/api/social/send"; |
207 | + if (that.sort_id == '') { | ||
208 | + Toast("请选择分类") | ||
209 | + return false | ||
210 | + } | ||
211 | + if (that.kindidea == '') { | ||
212 | + Toast("请输入您的想法") | ||
213 | + return false | ||
214 | + } | ||
215 | + if (that.chuanimage.length != that.fileList.length) { | ||
216 | + Toast("图片上传中") | ||
217 | + return false | ||
218 | + } | ||
78 | let param = { | 219 | let param = { |
79 | - redirect_uri: urlk | 220 | + sort_id: that.sort_id, |
221 | + description: that.kindidea, | ||
222 | + images: that.chuanimage.join(",") | ||
80 | }; | 223 | }; |
81 | 224 | ||
82 | that.$axios | 225 | that.$axios |
83 | .post(url, param) | 226 | .post(url, param) |
84 | .then(function (res) { | 227 | .then(function (res) { |
85 | console.log(res); | 228 | console.log(res); |
229 | + Toast("发布成功") | ||
230 | + that.$router.go(-1) | ||
231 | + | ||
86 | 232 | ||
87 | }) | 233 | }) |
88 | .catch(function (err) { | 234 | .catch(function (err) { |
@@ -103,4 +249,9 @@ export default { | @@ -103,4 +249,9 @@ export default { | ||
103 | padding-bottom: 0.32rem; | 249 | padding-bottom: 0.32rem; |
104 | box-sizing: border-box; | 250 | box-sizing: border-box; |
105 | } | 251 | } |
252 | +.kindleft { | ||
253 | + color: #323233; | ||
254 | + font-size: 0.28rem; | ||
255 | + margin-right: 0.32rem; | ||
256 | +} | ||
106 | </style> | 257 | </style> |
@@ -4,56 +4,110 @@ | @@ -4,56 +4,110 @@ | ||
4 | <div | 4 | <div |
5 | class="coursenavleft" | 5 | class="coursenavleft" |
6 | :class="selnav == index ? 'selactive' : ''" | 6 | :class="selnav == index ? 'selactive' : ''" |
7 | - @click="selectnav(item.id,index)" | 7 | + @click="selectnav(item.id, index)" |
8 | v-for="(item, index) in navarr" | 8 | v-for="(item, index) in navarr" |
9 | :key="index" | 9 | :key="index" |
10 | - >{{ item.sort_name }}</div> | 10 | + > |
11 | + {{ item.sort_name }} | ||
12 | + </div> | ||
11 | </div> | 13 | </div> |
12 | <div class="societybox"> | 14 | <div class="societybox"> |
13 | - <div class="nodata" v-if="sortlist.length==0">暂无数据</div> | ||
14 | - <van-list v-model="loading" :finished="finished" finished-text="没有更多了" @load="onLoad" v-else> | ||
15 | - <div class="societyitem" v-for="item in sortlist" :key="item.id"> | 15 | + <div class="nodata" v-if="sortlist.length == 0">暂无数据</div> |
16 | + <van-list | ||
17 | + v-model="loading" | ||
18 | + :finished="finished" | ||
19 | + finished-text="没有更多了" | ||
20 | + @load="onLoad" | ||
21 | + v-else | ||
22 | + > | ||
23 | + <div class="societyitem" v-for="(item, index) in sortlist" :key="index"> | ||
16 | <div class="societytop flextwo"> | 24 | <div class="societytop flextwo"> |
17 | <div class="societyleft flexone"> | 25 | <div class="societyleft flexone"> |
18 | <div class="personimg"> | 26 | <div class="personimg"> |
19 | <img :src="item.user.avatar" alt /> | 27 | <img :src="item.user.avatar" alt /> |
20 | </div> | 28 | </div> |
21 | <div class="personright"> | 29 | <div class="personright"> |
22 | - <div class="personname">{{item.user.nickname}}</div> | ||
23 | - <div class="persondate">{{item.createtime}}</div> | 30 | + <div class="personname">{{ item.user.nickname }}</div> |
31 | + <div class="persondate">{{ item.createtime }}</div> | ||
24 | </div> | 32 | </div> |
25 | </div> | 33 | </div> |
26 | - <div class="dingimg" v-if="item.is_top==1"> | 34 | + <div class="dingimg" v-if="item.is_top == 1"> |
27 | <img src="../../../assets/ding.png" alt /> | 35 | <img src="../../../assets/ding.png" alt /> |
28 | </div> | 36 | </div> |
29 | </div> | 37 | </div> |
30 | - <div class="societytext">{{item.description}}</div> | ||
31 | - <div class="societyimg flexone" v-if="item.images_arr.length!=0"> | ||
32 | - <div class="societyimgitem" v-for="item in item.images_arr" :key="item"> | ||
33 | - <img src="../../../assets/societyimg.png" alt /> | 38 | + <div class="societytext">{{ item.description }}</div> |
39 | + <div class="societyimg flexone" v-if="item.images_arr.length != 0"> | ||
40 | + <div | ||
41 | + class="societyimgitem" | ||
42 | + v-for="(item, indexk) in item.images_arr" | ||
43 | + :key="indexk" | ||
44 | + @click="previewimg(index, indexk)" | ||
45 | + > | ||
46 | + <img :src="item" alt /> | ||
47 | + </div> | ||
48 | + </div> | ||
49 | + <div class="jianzhengtui flexone"> | ||
50 | + <div | ||
51 | + class="jianzheng flexone" | ||
52 | + v-for="(item, index) in item.tags" | ||
53 | + :key="index" | ||
54 | + > | ||
55 | + <div class="jianzhengleft" :style="{ background: item.color }"> | ||
56 | + # | ||
57 | + </div> | ||
58 | + <div class="jianzhengright" :style="{ color: item.color }"> | ||
59 | + {{ item.name }} | ||
34 | </div> | 60 | </div> |
35 | </div> | 61 | </div> |
36 | - <div class="jianzheng flexone"> | ||
37 | - <div class="jianzhengleft">#</div> | ||
38 | - <div class="jianzhengright">见证蜕变</div> | ||
39 | </div> | 62 | </div> |
63 | + | ||
40 | <!-- 点赞 --> | 64 | <!-- 点赞 --> |
41 | <div class="dainzan flexone"> | 65 | <div class="dainzan flexone"> |
42 | - <div class="flexone dianitem"> | ||
43 | - <img src="../../../assets/zan.png" alt class="dianzanimg" /> | ||
44 | - <span class="number">960</span> | 66 | + <div class="flexone dianitem" @click="zanclick(index, item)"> |
67 | + <img | ||
68 | + src="../../../assets/diankong.png" | ||
69 | + alt | ||
70 | + class="dianzanimg" | ||
71 | + v-if="item.is_good == 0" | ||
72 | + /> | ||
73 | + <img | ||
74 | + src="../../../assets/zan.png" | ||
75 | + alt | ||
76 | + class="dianzanimg" | ||
77 | + v-else | ||
78 | + /> | ||
79 | + <span class="number">{{ item.good_count }}</span> | ||
45 | </div> | 80 | </div> |
46 | - <div class="flexone dianitem"> | ||
47 | - <img src="../../../assets/star.png" alt class="dianzanimg" /> | ||
48 | - <span class="number">960</span> | 81 | + <div class="flexone dianitem" @click="collect(index, item)"> |
82 | + <img | ||
83 | + src="../../../assets/starkong.png" | ||
84 | + alt | ||
85 | + class="dianzanimg" | ||
86 | + v-if="item.is_favorite == 0" | ||
87 | + /> | ||
88 | + <img | ||
89 | + src="../../../assets/star.png" | ||
90 | + alt | ||
91 | + class="dianzanimg" | ||
92 | + v-else | ||
93 | + /> | ||
94 | + | ||
95 | + <span class="number">{{ item.favorite_count }}</span> | ||
49 | </div> | 96 | </div> |
50 | - <div class="flexone dianitem"> | 97 | + <div class="flexone dianitem" @click="copytext"> |
51 | <img src="../../../assets/edit.png" alt class="dianzanimg" /> | 98 | <img src="../../../assets/edit.png" alt class="dianzanimg" /> |
52 | - <span class="number">960</span> | 99 | + <!-- <span class="number">复制文本</span> --> |
100 | + <span | ||
101 | + class="number" | ||
102 | + v-clipboard:copy="item.description" | ||
103 | + v-clipboard:success="onCopy" | ||
104 | + >复制</span | ||
105 | + > | ||
106 | + <!-- v-clipboard:error="onError" --> | ||
53 | </div> | 107 | </div> |
54 | - <div class="flexone dianitem"> | 108 | + <div class="flexone dianitem" @click="save(item)"> |
55 | <img src="../../../assets/download.png" alt class="dianzanimg" /> | 109 | <img src="../../../assets/download.png" alt class="dianzanimg" /> |
56 | - <span class="number">960</span> | 110 | + <span class="number">一键保存</span> |
57 | </div> | 111 | </div> |
58 | </div> | 112 | </div> |
59 | </div> | 113 | </div> |
@@ -61,11 +115,19 @@ | @@ -61,11 +115,19 @@ | ||
61 | </div> | 115 | </div> |
62 | 116 | ||
63 | <!-- 图片没有上传 --> | 117 | <!-- 图片没有上传 --> |
64 | - <div class="gantanimg" v-if="nophoto"> | 118 | + <div class="gantanimg" v-if="nophoto" @click="nophotoup"> |
65 | <img src="../../../assets/gantan.png" class="ganimg" alt /> | 119 | <img src="../../../assets/gantan.png" class="ganimg" alt /> |
66 | <div class="gantantext">用户未上传图片</div> | 120 | <div class="gantantext">用户未上传图片</div> |
67 | </div> | 121 | </div> |
68 | - | 122 | + <!-- 预览图片 --> |
123 | + <van-image-preview | ||
124 | + v-model="show" | ||
125 | + :images="images" | ||
126 | + @change="onChange" | ||
127 | + :startPosition="startPosition" | ||
128 | + > | ||
129 | + <template v-slot:index>第{{ index + 1 }}页</template> | ||
130 | + </van-image-preview> | ||
69 | <!-- 添加 --> | 131 | <!-- 添加 --> |
70 | <div class="addimg" @click="publish"> | 132 | <div class="addimg" @click="publish"> |
71 | <img src="../../../assets/add.png" alt /> | 133 | <img src="../../../assets/add.png" alt /> |
@@ -76,10 +138,12 @@ | @@ -76,10 +138,12 @@ | ||
76 | 138 | ||
77 | <script> | 139 | <script> |
78 | import tabBar from "@/components/views/tabBar.vue"; | 140 | import tabBar from "@/components/views/tabBar.vue"; |
79 | -import Vue from 'vue'; | ||
80 | -import { List } from 'vant'; | 141 | +import Vue from "vue"; |
142 | +import { List, Toast, ImagePreview } from "vant"; | ||
143 | +Vue.use(ImagePreview); | ||
81 | 144 | ||
82 | Vue.use(List); | 145 | Vue.use(List); |
146 | + | ||
83 | export default { | 147 | export default { |
84 | components: { | 148 | components: { |
85 | tabBar | 149 | tabBar |
@@ -88,22 +152,57 @@ export default { | @@ -88,22 +152,57 @@ export default { | ||
88 | return { | 152 | return { |
89 | selnav: 0, | 153 | selnav: 0, |
90 | navarr: [], | 154 | navarr: [], |
91 | - sort_id: '', | 155 | + sort_id: "", |
92 | nophoto: false, | 156 | nophoto: false, |
93 | sortlist: [], | 157 | sortlist: [], |
94 | loading: false, | 158 | loading: false, |
95 | finished: false, | 159 | finished: false, |
96 | page: 1, | 160 | page: 1, |
97 | - this_page: '', | ||
98 | - total_page: '' | 161 | + this_page: "", |
162 | + total_page: "", | ||
163 | + show: false, | ||
164 | + index: 0, | ||
165 | + images: [], | ||
166 | + startPosition: 0 | ||
99 | }; | 167 | }; |
100 | }, | 168 | }, |
101 | created() { | 169 | created() { |
102 | - this.getsort() | 170 | + this.getsort(); |
103 | }, | 171 | }, |
104 | methods: { | 172 | methods: { |
173 | + save(item) { | ||
174 | + this.images = item.images_arr; | ||
175 | + if (this.images.length == 0) { | ||
176 | + this.nophoto = true; | ||
177 | + } else { | ||
178 | + this.index = 0; | ||
179 | + this.show = true; | ||
180 | + } | ||
181 | + }, | ||
182 | + previewimg(index, indexk) { | ||
183 | + console.log(index, indexk); | ||
184 | + this.index = indexk; | ||
185 | + this.images = this.sortlist[index].images_arr; | ||
186 | + this.show = true; | ||
187 | + this.startPosition = indexk; | ||
188 | + }, | ||
189 | + nophotoup() { | ||
190 | + this.nophoto = false; | ||
191 | + }, | ||
192 | + // 图片预览 | ||
193 | + onChange(index) { | ||
194 | + this.index = index; | ||
195 | + }, | ||
196 | + onCopy(e) { | ||
197 | + Toast("复制成功"); | ||
198 | + }, | ||
105 | onLoad() { | 199 | onLoad() { |
106 | let that = this; | 200 | let that = this; |
201 | + console.log(888); | ||
202 | + // if (that.page = 1) { | ||
203 | + // that.loading = false | ||
204 | + // that.finished = false | ||
205 | + // } | ||
107 | // 异步更新数据 | 206 | // 异步更新数据 |
108 | // setTimeout 仅做示例,真实场景中一般为 ajax 请求 | 207 | // setTimeout 仅做示例,真实场景中一般为 ajax 请求 |
109 | setTimeout(() => { | 208 | setTimeout(() => { |
@@ -113,7 +212,7 @@ export default { | @@ -113,7 +212,7 @@ export default { | ||
113 | let newpage = that.page; | 212 | let newpage = that.page; |
114 | newpage++; | 213 | newpage++; |
115 | that.page = newpage; | 214 | that.page = newpage; |
116 | - that.getsocidtylist() | 215 | + that.getsocidtylist(); |
117 | // 加载状态结束 | 216 | // 加载状态结束 |
118 | that.loading = false; | 217 | that.loading = false; |
119 | // 数据全部加载完成 | 218 | // 数据全部加载完成 |
@@ -122,19 +221,89 @@ export default { | @@ -122,19 +221,89 @@ export default { | ||
122 | } | 221 | } |
123 | }, 1000); | 222 | }, 1000); |
124 | }, | 223 | }, |
224 | + // 收藏 | ||
225 | + collect(index, item) { | ||
226 | + let that = this; | ||
227 | + var url = "/api/user/favorite"; | ||
228 | + let param = { | ||
229 | + type: 3, | ||
230 | + favorite_id: item.id | ||
231 | + }; | ||
232 | + | ||
233 | + that.$axios | ||
234 | + .post(url, param) | ||
235 | + .then(function(res) { | ||
236 | + console.log(res); | ||
237 | + if (item.is_favorite == 0) { | ||
238 | + item.is_favorite = 1; | ||
239 | + that.sortlist[index].is_favorite = 1; | ||
240 | + that.sortlist[index].favorite_count = | ||
241 | + that.sortlist[index].favorite_count + 1; | ||
242 | + Toast("收藏成功"); | ||
243 | + } else if (item.is_favorite == 1) { | ||
244 | + item.is_favorite = 1; | ||
245 | + Toast("取消收藏成功"); | ||
246 | + that.sortlist[index].is_favorite = 0; | ||
247 | + that.sortlist[index].favorite_count = | ||
248 | + that.sortlist[index].favorite_count - 1; | ||
249 | + } | ||
250 | + that.sortlist = that.sortlist; | ||
251 | + that.$forceUpdate(); | ||
252 | + }) | ||
253 | + .catch(function(err) { | ||
254 | + console.log(err); | ||
255 | + }); | ||
256 | + }, | ||
257 | + | ||
258 | + zanclick(index, item) { | ||
259 | + let that = this; | ||
260 | + console.log(item.id); | ||
261 | + var url = "/api/user/good"; | ||
262 | + let param = { | ||
263 | + type: 1, | ||
264 | + good_id: item.id | ||
265 | + }; | ||
266 | + | ||
267 | + that.$axios | ||
268 | + .post(url, param) | ||
269 | + .then(function(res) { | ||
270 | + console.log(res); | ||
271 | + if (item.is_good == 0) { | ||
272 | + item.is_good = 1; | ||
273 | + that.sortlist[index].is_good = 1; | ||
274 | + that.sortlist[index].good_count = | ||
275 | + that.sortlist[index].good_count + 1; | ||
276 | + Toast("点赞成功"); | ||
277 | + } else if (item.is_good == 1) { | ||
278 | + item.is_good = 1; | ||
279 | + Toast("取消点赞成功"); | ||
280 | + that.sortlist[index].is_good = 0; | ||
281 | + that.sortlist[index].good_count = | ||
282 | + that.sortlist[index].good_count - 1; | ||
283 | + } | ||
284 | + that.sortlist = that.sortlist; | ||
285 | + that.$forceUpdate(); | ||
286 | + }) | ||
287 | + .catch(function(err) { | ||
288 | + console.log(err); | ||
289 | + }); | ||
290 | + }, | ||
291 | + | ||
292 | + // 复制文本 | ||
293 | + copytext() {}, | ||
125 | 294 | ||
126 | selectnav(id, index) { | 295 | selectnav(id, index) { |
127 | let that = this; | 296 | let that = this; |
128 | 297 | ||
129 | this.selnav = index; | 298 | this.selnav = index; |
130 | - this.sort_id = id | 299 | + this.sort_id = id; |
131 | that.page = 1; | 300 | that.page = 1; |
132 | that.sortlist = []; | 301 | that.sortlist = []; |
133 | - that.getsocidtylist() | 302 | + that.getsocidtylist(); |
134 | }, | 303 | }, |
135 | publish() { | 304 | publish() { |
136 | this.$router.push({ | 305 | this.$router.push({ |
137 | - path: "/publish", | 306 | + path: "/publish" |
138 | // query: { testId: item.test_student_id } | 307 | // query: { testId: item.test_student_id } |
139 | }); | 308 | }); |
140 | }, | 309 | }, |
@@ -142,19 +311,17 @@ export default { | @@ -142,19 +311,17 @@ export default { | ||
142 | getsort() { | 311 | getsort() { |
143 | let that = this; | 312 | let that = this; |
144 | var url = "/api/social/sort"; | 313 | var url = "/api/social/sort"; |
145 | - let param = { | ||
146 | - | ||
147 | - }; | 314 | + let param = {}; |
148 | 315 | ||
149 | that.$axios | 316 | that.$axios |
150 | .post(url, param) | 317 | .post(url, param) |
151 | - .then(function (res) { | 318 | + .then(function(res) { |
152 | console.log(res); | 319 | console.log(res); |
153 | - that.navarr = res.data | ||
154 | - that.sort_id = res.data[0].id | ||
155 | - | 320 | + that.navarr = res.data; |
321 | + that.sort_id = res.data[0].id; | ||
322 | + that.getsocidtylist(); | ||
156 | }) | 323 | }) |
157 | - .catch(function (err) { | 324 | + .catch(function(err) { |
158 | console.log(err); | 325 | console.log(err); |
159 | }); | 326 | }); |
160 | }, | 327 | }, |
@@ -169,14 +336,13 @@ export default { | @@ -169,14 +336,13 @@ export default { | ||
169 | 336 | ||
170 | that.$axios | 337 | that.$axios |
171 | .post(url, param) | 338 | .post(url, param) |
172 | - .then(function (res) { | 339 | + .then(function(res) { |
173 | console.log(res); | 340 | console.log(res); |
174 | - that.sortlist = that.sortlist.concat(res.data.social) | 341 | + that.sortlist = that.sortlist.concat(res.data.social); |
175 | that.this_page = res.data.this_page; | 342 | that.this_page = res.data.this_page; |
176 | - that.total_page = res.data.total_page | ||
177 | - | 343 | + that.total_page = res.data.total_page; |
178 | }) | 344 | }) |
179 | - .catch(function (err) { | 345 | + .catch(function(err) { |
180 | console.log(err); | 346 | console.log(err); |
181 | }); | 347 | }); |
182 | } | 348 | } |
@@ -14,11 +14,17 @@ import axios from "./utils/common.js"; | @@ -14,11 +14,17 @@ import axios from "./utils/common.js"; | ||
14 | if (sessionStorage.getItem("token")) { | 14 | if (sessionStorage.getItem("token")) { |
15 | axios.defaults.headers.common["token"] = sessionStorage.getItem("token"); | 15 | axios.defaults.headers.common["token"] = sessionStorage.getItem("token"); |
16 | } | 16 | } |
17 | +import uploadFile from "./utils/common.js"; | ||
18 | +Vue.prototype.$uploadFile = uploadFile; | ||
17 | 19 | ||
18 | Vue.prototype.$axios = axios; | 20 | Vue.prototype.$axios = axios; |
19 | 21 | ||
20 | sessionStorage.setItem("token", "89cf0730-59e2-4627-baa3-a4451454794b"); | 22 | sessionStorage.setItem("token", "89cf0730-59e2-4627-baa3-a4451454794b"); |
21 | 23 | ||
24 | +import VueClipboard from "vue-clipboard2"; | ||
25 | + | ||
26 | +Vue.use(VueClipboard); | ||
27 | + | ||
22 | // router.beforeEach((to, from, next) => { | 28 | // router.beforeEach((to, from, next) => { |
23 | // const token = sessionStorage.getItem("token"); | 29 | // const token = sessionStorage.getItem("token"); |
24 | // console.log("我是token", token); | 30 | // console.log("我是token", token); |
@@ -55,6 +55,10 @@ | @@ -55,6 +55,10 @@ | ||
55 | border-radius: 50%; | 55 | border-radius: 50%; |
56 | } | 56 | } |
57 | 57 | ||
58 | +.personimg img { | ||
59 | + border-radius: 50%; | ||
60 | +} | ||
61 | + | ||
58 | .personname { | 62 | .personname { |
59 | color: #02170b; | 63 | color: #02170b; |
60 | font-size: 0.28rem; | 64 | font-size: 0.28rem; |
@@ -105,6 +109,11 @@ | @@ -105,6 +109,11 @@ | ||
105 | font-size: 0.16rem; | 109 | font-size: 0.16rem; |
106 | line-height: 0.44rem; | 110 | line-height: 0.44rem; |
107 | margin-top: 0.32rem; | 111 | margin-top: 0.32rem; |
112 | + margin-right: 0.2rem; | ||
113 | +} | ||
114 | + | ||
115 | +.jianzhengtui { | ||
116 | + flex-wrap: wrap; | ||
108 | } | 117 | } |
109 | 118 | ||
110 | .jianzhengleft { | 119 | .jianzhengleft { |
@@ -139,7 +148,7 @@ | @@ -139,7 +148,7 @@ | ||
139 | } | 148 | } |
140 | 149 | ||
141 | .dianitem { | 150 | .dianitem { |
142 | - margin-right: 0.58rem; | 151 | + margin-right: 0.38rem; |
143 | } | 152 | } |
144 | 153 | ||
145 | .dainzan { | 154 | .dainzan { |
@@ -184,7 +193,7 @@ | @@ -184,7 +193,7 @@ | ||
184 | /* 发布 */ | 193 | /* 发布 */ |
185 | 194 | ||
186 | .publishitem { | 195 | .publishitem { |
187 | - padding: 0.26rem; | 196 | + padding: 0.26rem 0; |
188 | box-sizing: border-box; | 197 | box-sizing: border-box; |
189 | border-bottom: 1px solid #eee; | 198 | border-bottom: 1px solid #eee; |
190 | } | 199 | } |
@@ -205,13 +214,13 @@ | @@ -205,13 +214,13 @@ | ||
205 | .kindname { | 214 | .kindname { |
206 | color: #999999; | 215 | color: #999999; |
207 | font-size: 0.28rem; | 216 | font-size: 0.28rem; |
208 | - margin-left: 0.32rem; | 217 | + /* margin-left: 0.32rem; */ |
209 | } | 218 | } |
210 | 219 | ||
211 | .enterkind { | 220 | .enterkind { |
212 | width: 100%; | 221 | width: 100%; |
213 | height: 5rem; | 222 | height: 5rem; |
214 | - padding: 0.18rem 0.32rem; | 223 | + padding: 0.18rem 0; |
215 | color: #999999; | 224 | color: #999999; |
216 | font-size: 0.28rem; | 225 | font-size: 0.28rem; |
217 | box-sizing: border-box; | 226 | box-sizing: border-box; |
@@ -24,3 +24,22 @@ Axios.interceptors.response.use( | @@ -24,3 +24,22 @@ Axios.interceptors.response.use( | ||
24 | ); | 24 | ); |
25 | 25 | ||
26 | export default Axios; | 26 | export default Axios; |
27 | +export function uploadFile(Url, data) { | ||
28 | + //上传图片的方法 | ||
29 | + return new Promise((resolve, reject) => { | ||
30 | + let instance = axios.create({ | ||
31 | + baseURL: "http://tangyuanji.t.brotop.cn/api/", | ||
32 | + headers: { | ||
33 | + "Content-Type": "multipart/form-data" | ||
34 | + } | ||
35 | + }); | ||
36 | + instance | ||
37 | + .post(Url, data) | ||
38 | + .then(res => { | ||
39 | + resolve(res.data.data); | ||
40 | + }) | ||
41 | + .catch(error => { | ||
42 | + reject(error.data); | ||
43 | + }); | ||
44 | + }); | ||
45 | +} |
-
请 注册 或 登录 后发表评论