class.vue 28 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628
  1. <template>
  2. <HomePageHead></HomePageHead>
  3. <HomePageNavigation></HomePageNavigation>
  4. <!-- 三农市场网-商城 -->
  5. <main class="index_main">
  6. <div class="shop_head_1 clearfix back100">
  7. <span class="shop_head_1_a" href="" title="">{{ categoryName }}</span>
  8. </div>
  9. <!-- 导航 -->
  10. <section class="shop_2 clearfix">
  11. <div class="shop_2_in clearfix">
  12. <div class="shop_2_in_box clearfix shop_2_in_box_even">
  13. <div class="shop_2_box clearfix">
  14. <NuxtLink class="shop_2_name" :href="`/${pageData[0].aLIas_pinyin}/index.html`"
  15. :title="pageData[0].title">
  16. {{ pageData[0].alias }}
  17. </NuxtLink>
  18. <div class="shop_2_right clearfix">
  19. <a class="shop_2_a" href="" title="" v-for="(item, index) in pageData[0].children"
  20. :key="index">{{ item.alias }}</a>
  21. </div>
  22. </div>
  23. <div class="shop_2_box clearfix">
  24. <NuxtLink class="shop_2_name" :href="`/${pageData[1].aLIas_pinyin}/index.html`"
  25. :title="pageData[1].title">
  26. {{ pageData[1].alias }}
  27. </NuxtLink>
  28. <div class="shop_2_right clearfix">
  29. <a class="shop_2_a" href="" title="" v-for="(item, index) in pageData[1].children"
  30. :key="index">{{ item.alias }}</a>
  31. </div>
  32. </div>
  33. </div>
  34. <div class="shop_2_in_box clearfix">
  35. <div class="shop_2_box clearfix">
  36. <NuxtLink class="shop_2_name" :href="`/${pageData[2].aLIas_pinyin}/index.html`"
  37. :title="pageData[2].title">
  38. {{ pageData[2].alias }}
  39. </NuxtLink>
  40. <div class="shop_2_right clearfix">
  41. <a class="shop_2_a" href="" title="" v-for="(item, index) in pageData[2].children"
  42. :key="index">{{ item.alias }}</a>
  43. </div>
  44. </div>
  45. <div class="shop_2_box clearfix">
  46. <NuxtLink class="shop_2_name" href="" title="" :href="`/${pageData[3].aLIas_pinyin}/index.html`"
  47. :title="pageData[3].title">
  48. {{ pageData[3].alias }}
  49. </NuxtLink>
  50. <div class="shop_2_right clearfix">
  51. <a class="shop_2_a" href="" title="" v-for="(item, index) in pageData[3].children"
  52. :key="index">{{ item.alias }}</a>
  53. </div>
  54. </div>
  55. </div>
  56. </div>
  57. <div class="shop_2_in_2 clearfix">
  58. <NuxtLink class="shop_2_name_2" :href="`/${pageData[4].aLIas_pinyin}/index.html`"
  59. :title="pageData[4].title">
  60. {{ pageData[4].alias }}
  61. </NuxtLink>
  62. <div class="shop_2_right_2 clearfix">
  63. <a class="shop_2_a_2" href="" title="" v-for="(item, index) in pageData[4].children" :key="index">
  64. {{ item.alias }}</a>
  65. </div>
  66. </div>
  67. </section>
  68. <section class="shop_3 clearfix" v-if="goodsData.length > 0">
  69. <!-- 农产批发1 -->
  70. <div class="shop_3_in clearfix">
  71. <div class="shop_head_2 clearfix">
  72. <div class="shop_head_2_name">{{ goodsData[0].alias }}</div>
  73. </div>
  74. <div class="shop_img_ul_1 clearfix" v-if="goodsData[0].data">
  75. <div class="shop_img_li_1 clearfix" v-for="(item, index) in goodsData[0].data" :key="index">
  76. <a class="shop_img_li_1_a" href="" title="">
  77. <div class="shop_img_li_1_img_box clearfix">
  78. <img class="shop_img_li_1_img" :src="item.imgurl" title="" alt="">
  79. </div>
  80. <div class="shop_img_li_1_right clearfix">
  81. <h4 class="shop_img_li_1_h4 dot2">{{ item.name }}</h4>
  82. <div class="shop_img_li_1_tag">
  83. {{ item.type_id == 1 ? '求购' : '供应' }}
  84. </div>
  85. <div class="shop_img_li_1_btn">查看详情</div>
  86. </div>
  87. </a>
  88. </div>
  89. </div>
  90. </div>
  91. <div class="shop_3_in clearfix">
  92. <div class="shop_head_3 clearfix">
  93. <a class="shop_head_3_more" href="" title="">栏目简介</a>
  94. </div>
  95. <div class="shop_ul_1 clearfix" v-if="goodsData[0].data1.length > 0">
  96. <div class="shop_li_1 clearfix" v-for="(item, index) in goodsData[0].data1" :key="index">
  97. <a class="shop_li_1_a" href="" title="">
  98. <div class="shop_li_1_left">
  99. <h4 class="shop_li_1_h4 dot1">{{ item.name }}</h4>
  100. <div class="shop_li_1_text dot1">{{ item.description }}</div>
  101. </div>
  102. <div class="shop_li_1_btn">查看详情</div>
  103. </a>
  104. </div>
  105. </div>
  106. </div>
  107. <!-- 集贸市场2 -->
  108. </section>
  109. <section class="shop_4 clearfix">
  110. <!-- 名品之窗1 -->
  111. <div class="shop_3_in clearfix" v-if="goodsData.length > 1">
  112. <div class="shop_head_4 clearfix">
  113. <div class="shop_head_4_name">{{ goodsData[1].alias }}</div>
  114. <a class="shop_head_4_more" href="" title="">栏目简介</a>
  115. </div>
  116. <div class="shop_img_ul_2 clearfix">
  117. <div class="shop_img_li_2 clearfix" v-for="(item, index) in goodsData[1].data" :key="index">
  118. <a class="shop_img_li_2_a" href="" title="">
  119. <div class="shop_img_li_2_img_box clearfix">
  120. <img class="shop_img_li_2_img" :src="item.imgurl" title="" alt="">
  121. </div>
  122. <div class="shop_img_li_2_right clearfix">
  123. <h4 class="shop_img_li_2_h4 dot2">{{ item.name }}</h4>
  124. <div class="shop_img_li_2_tag">
  125. {{ item.type_id == 1 ? '求购' : '供应' }}
  126. </div>
  127. <div class="shop_img_li_2_btn">查看详情</div>
  128. </div>
  129. </a>
  130. </div>
  131. </div>
  132. </div>
  133. <!-- 名品之窗2 -->
  134. <!-- 供求信息1 -->
  135. <div class="shop_3_in clearfix" v-if="goodsData.length > 2">
  136. <div class="shop_head_5 clearfix">
  137. <div class="shop_head_5_name">{{ goodsData[2].alias }}</div>
  138. <a class="shop_head_5_more" href="" title="">栏目简介</a>
  139. </div>
  140. <div class="shop_img_ul_3 clearfix">
  141. <div class="shop_img_li_3 clearfix" v-for="(item, index) in goodsData[2].data" :key="index">
  142. <a class="shop_img_li_3_a" href="" title="">
  143. <div class="shop_img_li_3_img_box clearfix">
  144. <img class="shop_img_li_3_img" :src="item.imgurl" title="" alt="">
  145. </div>
  146. <div class="shop_img_li_3_right clearfix">
  147. <h4 class="shop_img_li_3_h4 dot2">{{ item.name }}</h4>
  148. <div class="shop_img_li_3_tag">
  149. {{ item.type_id == 1 ? '求购' : '供应' }}
  150. </div>
  151. <div class="shop_img_li_3_btn">查看详情</div>
  152. </div>
  153. </a>
  154. </div>
  155. </div>
  156. </div>
  157. <!-- 供求信息2 -->
  158. </section>
  159. <div class="banner_1 clearfix">
  160. <a class="banner_1_a" href="" title="">
  161. <img class="banner_1_img" src="@/public/img/6.png" title="" alt="">
  162. </a>
  163. </div>
  164. <section class="shop_5 clearfix">
  165. <!-- 农产动态 1-->
  166. <div class="shop_5_left clearfix">
  167. <div class="shop_head_7 clearfix">
  168. <NuxtLink :href="`/${newsData[0].aLIas_pinyin}/index.html`" class="shop_head_7_name">
  169. {{ newsData[0].alias }}
  170. </NuxtLink>
  171. <NuxtLink :href="`/${newsData[0].aLIas_pinyin}/index.html`" class="shop_head_7_more"
  172. :title="newsData[0].title">
  173. 栏目简介
  174. </NuxtLink>
  175. </div>
  176. <div class="shop_box_1 clearfix">
  177. <div class="shop_img_ul_4 clearfix">
  178. <div class="shop_img_li_4 clearfix">
  179. <NuxtLink class="shop_img_li_4_a"
  180. :href="`/${newsData[0].data.pinyin}/${newsData[0].data.id}.html`"
  181. :title="newsData[0].data.title">
  182. <img class="shop_img_li_4_img" :src="newsData[0].data.imgurl"
  183. :title="newsData[0].data.title" alt="">
  184. <div class="shop_img_li_4_rgba clearfix dot1">
  185. {{ newsData[0].data.alias }}
  186. </div>
  187. </NuxtLink>
  188. </div>
  189. </div>
  190. <div class="shop_img_ul_5 clearfix">
  191. <div class="shop_img_li_5 clearfix" v-for="(item, index) in newsData[0].data1" :key="index">
  192. <NuxtLink class="shop_img_li_5_a" :href="`/${item.pinyin}/${item.id}.html`"
  193. :title="item.title">
  194. <img class="shop_img_li_5_img" :src="item.imgurl" :title="item.title" alt="">
  195. <div class="shop_img_li_5_rgba clearfix dot1">
  196. {{ item.alias }}
  197. </div>
  198. </NuxtLink>
  199. </div>
  200. </div>
  201. </div>
  202. <div class="shop_box_2 clearfix">
  203. <div class="shop_ul_2 clearfix">
  204. <NuxtLink class="shop_li_2 clearfix dot1" :href="`/${item.pinyin}/${item.id}.html`"
  205. :title="item.title" v-for="(item, index) in newsData[0].data2" :key="index">
  206. {{ item.alias }}
  207. </NuxtLink>
  208. </div>
  209. </div>
  210. </div>
  211. <!-- 农产动态 2-->
  212. <!-- 农产知识 1-->
  213. <div class="shop_5_right clearfix">
  214. <div class="shop_head_8 clearfix">
  215. <NuxtLink :href="`/${newsData[1].aLIas_pinyin}/index.html`" class="shop_head_8_name">
  216. {{ newsData[1].alias }}
  217. </NuxtLink>
  218. <NuxtLink :href="`/${newsData[1].aLIas_pinyin}/index.html`" class="shop_head_8_more"
  219. :title="newsData[1].title">
  220. 栏目简介
  221. </NuxtLink>
  222. </div>
  223. <div class="shop_img_ul_6 clearfix">
  224. <div class="shop_img_li_6 clearfix">
  225. <NuxtLink class="shop_img_li_6_a"
  226. :href="`/${newsData[1].data.pinyin}/${newsData[1].data.id}.html`"
  227. :title="newsData[1].data.title">
  228. <img class="shop_img_li_6_img" :src="newsData[1].data.imgurl" title="" alt="">
  229. <div class="shop_img_li_6_rgba clearfix dot1">
  230. {{ newsData[1].data.alias }}
  231. </div>
  232. </NuxtLink>
  233. </div>
  234. </div>
  235. <div class="shop_ul_3 clearfix">
  236. <NuxtLink class="shop_li_3 dot1" :href="`/${item.pinyin}/${item.id}.html`" :title="item.title"
  237. v-for="(item, index) in newsData[1].data2" :key="index">
  238. {{ item.alias }}
  239. </NuxtLink>
  240. </div>
  241. </div>
  242. <!-- 农产知识 2-->
  243. </section>
  244. <section class="shop_6 clearfix">
  245. <!-- 农产会展1 -->
  246. <div class="shop_6_left clearfix">
  247. <div class="shop_head_9 clearfix">
  248. <NuxtLink :href="`/${newsData[2].aLIas_pinyin}/index.html`" class="shop_head_9_name">
  249. {{ newsData[2].alias }}
  250. </NuxtLink>
  251. <NuxtLink :href="`/${newsData[2].aLIas_pinyin}/index.html`" class="shop_head_9_more"
  252. :title="newsData[2].title">
  253. 栏目简介
  254. </NuxtLink>
  255. </div>
  256. <div class="shop_box_3 clearfix">
  257. <div class="shop_img_ul_7 clearfix">
  258. <div class="shop_img_li_7 clearfix">
  259. <NuxtLink class="shop_img_li_7_a"
  260. :href="`/${newsData[2].data.pinyin}/${newsData[2].data.id}.html`"
  261. :title="newsData[2].data.title">
  262. <img class="shop_img_li_7_img" :src="newsData[2].data.imgurl"
  263. :title="newsData[2].data.title" alt="">
  264. <div class="shop_img_li_7_rgba clearfix dot1">
  265. {{ newsData[2].data.alias }}
  266. </div>
  267. </NuxtLink>
  268. </div>
  269. </div>
  270. </div>
  271. <div class="shop_box_4 clearfix">
  272. <div class="shop_ul_4 clearfix">
  273. <NuxtLink :href="`/${item.pinyin}/${item.id}.html`" :title="item.title"
  274. class="shop_li_4 clearfix dot1" v-for="(item, index) in newsData[2].data2" :key="index">
  275. {{ item.alias }}
  276. </NuxtLink>
  277. </div>
  278. </div>
  279. </div>
  280. <!-- 农产会展2 -->
  281. <!-- 农产商机1 -->
  282. <div class="shop_6_right clearfix">
  283. <div class="shop_head_10 clearfix">
  284. <NuxtLink :href="`/${newsData[3].aLIas_pinyin}/index.html`" class="shop_head_10_name">
  285. {{ newsData[3].alias }}
  286. </NuxtLink>
  287. <NuxtLink :href="`/${newsData[3].aLIas_pinyin}/index.html`" class="shop_head_10_more"
  288. :title="newsData[3].title">
  289. 栏目简介
  290. </NuxtLink>
  291. </div>
  292. <div class="shop_box_5 clearfix" v-if="newsData[3].data">
  293. <div class="shop_img_ul_8 clearfix">
  294. <div class="shop_img_li_8 clearfix" v-for="(item, index) in newsData[3].data" :key="index">
  295. <NuxtLink class="shop_img_li_8_a" :href="`/${item.pinyin}/${item.id}.html`"
  296. :title="item.title">
  297. <img class="shop_img_li_8_img" :src="item.imgurl" title="" alt="">
  298. <div class="shop_img_li_8_rgba clearfix dot1">
  299. {{ item.alias }}
  300. </div>
  301. </NuxtLink>
  302. </div>
  303. </div>
  304. </div>
  305. <div class="shop_box_6 clearfix" v-if="newsData[3].data2">
  306. <div class="shop_ul_5 clearfix">
  307. <div class="shop_li_5 clearfix" v-for="(item, index) in newsData[3].data2" :key="index">
  308. <div class="shop_li_5_in clearfix">
  309. <NuxtLink class="shop_li_5_a dot2" :href="`/${item.pinyin}/${item.id}.html`"
  310. :title="item.title">
  311. {{ item.alias }}
  312. </NuxtLink>
  313. </div>
  314. </div>
  315. </div>
  316. </div>
  317. </div>
  318. <!-- 农产商机2 -->
  319. </section>
  320. <div class="banner_2 clearfix">
  321. <a class="banner_2_a" href="" title=""><img class="banner_2_img" src="@/public/img/15.png" title=""
  322. alt=""></a>
  323. </div>
  324. </main>
  325. <HomeFoot></HomeFoot>
  326. </template>
  327. <script setup>
  328. import { NuxtLink } from '#components';
  329. import { ref } from 'vue'
  330. // import { ElRadio, ElRadioGroup } from 'element-plus'
  331. //1.获得路由id start ---------------------------------------->
  332. const targetSegment = getRoutePath(1);
  333. //1.1 获得当前的路由id
  334. let routeId;
  335. let categoryName;
  336. //通过导航路径反向查询导航id
  337. const getRouteId = await requestDataPromise('/web/getWebsiteRoute', {
  338. method: 'GET',
  339. query: {
  340. 'pinyin': targetSegment,
  341. },
  342. });
  343. if (getRouteId.code == 200) {
  344. routeId = getRouteId.data.category_id
  345. categoryName = getRouteId.data.alias
  346. } else {
  347. console.log("获得路由id出错!", getRouteId.message)
  348. }
  349. //1.获得路由id end ---------------------------------------->
  350. //3.广告 start ---------------------------------------->
  351. let adImg1 = ref({})
  352. let adImg2 = ref({})
  353. let adImg3 = ref({})
  354. let adImg4 = ref({})
  355. onMounted(async () => {
  356. //从客户端获取行政职能部门 加快打开速度
  357. const { $webUrl, $CwebUrl } = useNuxtApp();
  358. //广告1
  359. let url = `${$webUrl}/web/getWebsiteAdvertisement?ad_tag=snzxw_category_0001`
  360. const responseAd1 = await fetch(url, {
  361. headers: {
  362. 'Content-Type': 'application/json',
  363. 'Userurl': $CwebUrl,
  364. 'Origin': $CwebUrl
  365. }
  366. });
  367. const resultAd1 = await responseAd1.json();
  368. adImg1.value = resultAd1.data[0];
  369. //广告2
  370. let url2 = `${$webUrl}/web/getWebsiteAdvertisement?ad_tag=snzxw_category_0002`
  371. const responseAd2 = await fetch(url2, {
  372. headers: {
  373. 'Content-Type': 'application/json',
  374. 'Userurl': $CwebUrl,
  375. 'Origin': $CwebUrl
  376. }
  377. });
  378. const resultAd2 = await responseAd2.json();
  379. adImg2.value = resultAd2.data[0];
  380. //广告3
  381. let url3 = `${$webUrl}/web/getWebsiteAdvertisement?ad_tag=snzxw_category_0003`
  382. const responseAd3 = await fetch(url3, {
  383. headers: {
  384. 'Content-Type': 'application/json',
  385. 'Userurl': $CwebUrl,
  386. 'Origin': $CwebUrl
  387. }
  388. });
  389. const resultAd3 = await responseAd3.json();
  390. adImg3.value = resultAd3.data[0];
  391. //广告4
  392. let url4 = `${$webUrl}/web/getWebsiteAdvertisement?ad_tag=snzxw_category_0004`
  393. const responseAd4 = await fetch(url4, {
  394. headers: {
  395. 'Content-Type': 'application/json',
  396. 'Userurl': $CwebUrl,
  397. 'Origin': $CwebUrl
  398. }
  399. });
  400. const resultAd4 = await responseAd4.json();
  401. adImg4.value = resultAd4.data[0];
  402. })
  403. //3.广告 end ---------------------------------------->
  404. //4.页面数据 start ---------------------------------------->
  405. const pageData = ref([
  406. //示例:
  407. // {
  408. // id: 1,
  409. // title: "", //该导航的标题
  410. // data: [], //数据1
  411. // data1: [], //数据2
  412. // data2: [], //数据3
  413. // data3: [], //数据4
  414. // data4: [], //数据5
  415. // category_id1: "", //子导航id1
  416. // category_id2: "",
  417. // category_id3: "",
  418. // category_id4: "",
  419. // title1: "", //子导航标题1
  420. // title2: "",
  421. // title3: "",
  422. // title4: "",
  423. // cid: "" //该导航的id
  424. // },
  425. ])
  426. const goodsData = ref([])
  427. const newsData = ref([])
  428. //4.1 获取所有导航
  429. try {
  430. const navigateData = await requestDataPromise('/web/getWebsiteModelCategory', {
  431. method: 'GET',
  432. query: {
  433. 'placeid': 1,
  434. 'pid': routeId,
  435. 'num': 8,
  436. 'type': 1
  437. },
  438. });
  439. console.log("导航池11111", navigateData);
  440. if (navigateData.code == 200) {
  441. // 遍历可用的导航池放到页面中
  442. for (let index in navigateData.data) {
  443. let data = {
  444. title: navigateData.data[index].name,
  445. cid: navigateData.data[index].category_id,
  446. children_count: navigateData.data[index].children_count,
  447. alias: navigateData.data[index].alias,
  448. aLIas_pinyin: targetSegment + "/" + navigateData.data[index].aLIas_pinyin,
  449. children: navigateData.data[index].children,
  450. type: navigateData.data[index].type,
  451. data: [],
  452. data1: [],
  453. data2: [],
  454. data3: [],
  455. data4: [],
  456. category_id1: "",
  457. category_id2: "",
  458. category_id3: "",
  459. category_id4: "",
  460. title1: "",
  461. title2: "",
  462. title3: "",
  463. title4: ""
  464. };
  465. if (navigateData.data[index].is_url == 1) {
  466. // 处理 URL 的逻辑
  467. } else {
  468. if (navigateData.data[index].type == 2) {
  469. goodsData.value.push(data);
  470. } else if (navigateData.data[index].type == 1) {
  471. newsData.value.push(data);
  472. }
  473. //每个页面最多8个模块
  474. pageData.value.push(data);
  475. }
  476. }
  477. console.log("导航池11111122222", pageData.value);
  478. console.log("导航池11111133333", goodsData.value);
  479. console.log("导航池11111144444", newsData.value);
  480. //导航池加载完毕,开始申请模块数据
  481. let getJson = [
  482. // { "parent": routeId + ",0,0", "child": newsData.value[0].cid + ",5,9" },//模块1
  483. // { "parent": routeId + ",0,0", "child": newsData.value[1].cid + ",1,6" },//模块2
  484. // { "parent": routeId + ",0,0", "child": newsData.value[2].cid + ",1,6" },//模块3
  485. // { "parent": routeId + ",0,0", "child": newsData.value[3].cid + ",1,6" },//模块4
  486. ]
  487. for (let i = 0; i < newsData.value.length; i++) {
  488. if (i == 0) {
  489. getJson.push({ "parent": routeId + ",0,0", "child": newsData.value[0].cid + ",3,9" })
  490. } else if (i == 1) {
  491. getJson.push({ "parent": routeId + ",0,0", "child": newsData.value[1].cid + ",1,2" })
  492. } else if (i == 2) {
  493. getJson.push({ "parent": routeId + ",0,0", "child": newsData.value[2].cid + ",1,6" })
  494. } else if (i == 3) {
  495. getJson.push({ "parent": routeId + ",0,0", "child": newsData.value[3].cid + ",2,4" })
  496. }
  497. }
  498. let jsonString = JSON.stringify(getJson);
  499. getPageAllData(jsonString);
  500. let goodsJson = [
  501. // { "catid": goodsData.value[0].cid + ",0,12" },//模块1
  502. // { "catid": goodsData.value[1].cid + ",0,4" },//模块2
  503. // { "catid": goodsData.value[2].cid + ",0,4" },//模块3
  504. ]
  505. for (let i = 0; i < goodsData.value.length; i++) {
  506. if (i == 0) {
  507. goodsJson.push({ "catid": goodsData.value[0].cid + ",0,12" });
  508. } else if (i == 1) {
  509. goodsJson.push({ "catid": goodsData.value[1].cid + ",0,4" });
  510. } else if (i == 2) {
  511. goodsJson.push({ "catid": goodsData.value[2].cid + ",0,4" });
  512. }
  513. }
  514. let goodsJsonString = JSON.stringify(goodsJson);
  515. getPageGoodsAllData(goodsJsonString);
  516. } else {
  517. console.log("错误:渲染8个模块环节出错,请检查是否存在没有数据的模块!")
  518. }
  519. } catch (error) {
  520. console.log("错误:导航池渲染执行接口出错!请检查频道页渲染的模块数据是否完整!")
  521. }
  522. // 获取商品数据 start--------------------------------------->
  523. async function getPageGoodsAllData(goodsJsonString) {
  524. const mkdata = await requestDataPromise('/web/getWebsiteCatidshop', {
  525. method: 'GET',
  526. query: {
  527. 'catid': goodsJsonString
  528. },
  529. });
  530. console.log("获取商品数据", mkdata);
  531. if (mkdata.code == 200) {
  532. //模块1
  533. for (let index in mkdata.data[0]) {
  534. console.log("获取商品数据", index, mkdata.data[0][index]);
  535. if (index < 4) {
  536. goodsData.value[0].data.push(mkdata.data[0][index]);
  537. } else {
  538. goodsData.value[0].data1.push(mkdata.data[0][index]);
  539. }
  540. }
  541. //模块2
  542. goodsData.value[1].data = mkdata.data[1];
  543. goodsData.value[2].data = mkdata.data[2];
  544. console.log("获取商品数据111111", goodsData.value);
  545. }
  546. }
  547. // 获取商品数据 end----------------------------------------->
  548. // 获取资讯数据 start----------------------------------------->
  549. async function getPageAllData(jsonString) {
  550. const mkdata = await requestDataPromise('/web/getWebsiteAllArticle', {
  551. method: 'GET',
  552. query: {
  553. 'id': jsonString
  554. },
  555. });
  556. // console.log("获取资讯数据11111111111", mkdata.data);
  557. if (mkdata.code == 200) {
  558. //模块1 顶部大图和列表
  559. for (let index in mkdata.data[0].child.imgnum) {
  560. if (index < 1) {
  561. newsData.value[0].data.push(mkdata.data[0].child.imgnum[index]);
  562. } else {
  563. newsData.value[0].data1.push(mkdata.data[0].child.imgnum[index]);
  564. }
  565. }
  566. newsData.value[0].data2 = mkdata.data[0].child.textnum;
  567. //模块2
  568. newsData.value[1].data = mkdata.data[1].child.imgnum;
  569. newsData.value[1].data2 = mkdata.data[1].child.textnum;
  570. //模块3
  571. newsData.value[2].data = mkdata.data[2].child.imgnum;
  572. newsData.value[2].data2 = mkdata.data[2].child.textnum;
  573. //模块4
  574. newsData.value[3].data = mkdata.data[3].child.imgnum;
  575. newsData.value[3].data2 = mkdata.data[3].child.textnum;
  576. } else {
  577. ElMessage.error(mkdata.message)
  578. }
  579. }
  580. // 获取资讯数据 end----------------------------------------->
  581. //4.页面数据 end ---------------------------------------->
  582. //5.设置seo信息 start---------------------------------------->
  583. const setData = await requestDataPromise('/web/getWebsiteCategoryHead', {
  584. method: 'GET',
  585. query: {
  586. 'catid': routeId
  587. },
  588. });
  589. if (setData.code == 200) {
  590. let seoTitle = setData.data.seo_title;
  591. let seoDescription = setData.data.seo_description;
  592. let seoKeywords = setData.data.seo_keywords;
  593. let seoSuffix = setData.data.suffix;
  594. let seoName = setData.data.website_name;
  595. useSeoMeta({
  596. title: seoTitle + "_" + seoSuffix,
  597. meta: [
  598. { name: 'keywords', content: seoKeywords + "_" + seoName + "_" + seoSuffix, tagPriority: 10 },
  599. { name: 'description', content: seoDescription + "_" + seoName + "_" + seoSuffix, tagPriority: 10 }
  600. ]
  601. });
  602. } else {
  603. console.log("设置频道页SEO出错!", setData.message)
  604. }
  605. //5.设置seo信息 end---------------------------------------->
  606. </script>
  607. <style lang="less" scoped>
  608. @import url("@/assets/css/shop/shopClass.less");
  609. </style>