提交 80075b47 编写于 作者: guangjun.yang's avatar guangjun.yang

1、修改not-found页面

2、打开激活与购买按钮
3、添加项目详情页面(空)
上级 788cacdd
......@@ -9,7 +9,7 @@
<van-collapse-item
v-for="(portalModule, index) in component.portalModuleDTOS"
:key="index"
:title="(parseInt(index) + 1) + '.' + portalModule.moduleName | shortName(19)"
:title="portalModule.moduleName | shortName(19)"
:name="portalModule.expandKey"
:value="portalModule.value"
:disabled="portalModule.disabled"
......
......@@ -9,7 +9,7 @@
<van-collapse-item
v-for="(portalModule, index) in component.portalModuleDTOS"
:key="index"
:title="(parseInt(index) + 1) + '.' + portalModule.moduleName | shortName(19)"
:title="portalModule.moduleName | shortName(19)"
:name="portalModule.expandKey"
:value="portalModule.value"
@click.native="chooseItem(portalModule)"
......
......@@ -9,7 +9,7 @@
<van-collapse-item
v-for="(portalModule, index) in component.portalModuleDTOS"
:key="index"
:title="(parseInt(index) + 1) + '.' + portalModule.moduleName | shortName(19)"
:title="portalModule.moduleName | shortName(19)"
:name="portalModule.expandKey"
:value="portalModule.value"
@click.native="chooseItem(portalModule)"
......
<template>
<section class="bind-cart-wrapper">
<article class="left">
<div class="top">
<span class="discount">{{(cardInfo.preferentialPrice || cardInfo.costPrice) | formatMoney}}</span>
<span v-show="cardInfo.preferentialPrice" class="price">
<del>原价¥{{cardInfo.costPrice | formatMoney}}</del>
</span>
</div>
<div class="bottom">
<img src="../../images/cme/phrase2/info.png" />
<span>激活或购买后可学习课程</span>
</div>
</article>
<article class="right">
<span class="left" @click="changeClick">去激活</span>
<span @click="gotoBuy" class="right">去购买</span>
</article>
</section>
</template>
<script>
export default {
props: {
cardInfo: {
type: Object,
default: () => {}
}
},
data() {
return {};
},
methods: {
changeClick(){
this.$emit("changeClick")
},
gotoBuy() {
this.$emit("gotoBuy");
}
}
};
</script>
<style lang="less" scoped>
.bind-cart-wrapper {
position: fixed;
left: 0;
bottom: 0;
z-index: 100;
width: 100%;
display: flex;
flex-direction: row;
height: 60px;
line-height: 1;
justify-content: space-between;
padding: 10px 15px;
font-size: 14px;
background: rgba(255, 255, 255, 1);
box-shadow: 0px -2px 10px 0px rgba(0, 0, 0, 0.1);
.left {
display: flex;
flex-direction: column;
height: 40px;
line-height: 1;
font-size: 12px;
// align-items: ;
.top {
margin-top: 3px;
height: 24px;
.discount {
color: #fb5b52;
font-size: 18px;
font-weight: 700;
margin-right: 4px;
}
.price {
color: #979899;
}
}
.bottom {
display: flex;
flex-direction: row;
img {
width: 12px;
height: 12px;
margin-left: 1px;
margin-right: 4px;
}
color: #979899;
}
}
.right {
display: flex;
flex-direction: row;
span {
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
width: 80px;
font-size: 14px;
font-weight: 400;
text-align: center;
color: #7f7f7f;
border: 1px solid #d2b573;
&.left {
border-radius: 20px 0px 0px 20px;
border-right-style: none;
// color: #ff7a4b;
}
&.right {
// background: linear-gradient(
// 137deg,
// rgba(255, 166, 95, 1) 0%,
// rgba(255, 122, 75, 1) 100%
// );
border-radius: 0px 20px 20px 0px;
// color: #fff;
}
}
}
}
</style>
\ No newline at end of file
import App from '../App'
const index = r => require.ensure([], () => r(require('../views/index')), 'index')
const complist = r => require.ensure([], () => r(require('../views/component-details')), 'complist')
const parent = r => require.ensure([], () => r(require('../views/parent-page')), 'parent')
const merge = r => require.ensure([], () => r(require('../views/merge-detail')), 'merge')
const test = r => require.ensure([], () => r(require('../views/test-components')), 'test-components')
export default [{
path: '/',
component: App,
children: [
{
path: '',
redirect: '/index'
},
{
path: '/index',
component: index
},
{
path: '/home',
component: index
},
{
path: '/comp2',
component: complist
},
{
path: '/parent',
component: parent
},
{
path: '/coop',
component: merge
},
{
path: '/test',
component: test
},
]
}]
......@@ -6,6 +6,7 @@ const shareMerge = r => require.ensure([], () => r(require('../views/share-merge
const test = r => require.ensure([], () => r(require('../views/test-components')), 'test-components')
const courseDetail = r => require.ensure([], () => r(require('../views/course-detail')), 'course-detail')
const notFound = r => require.ensure([], () => r(require('../views/not-found')), 'not-found')
const goodsDetail = r => require.ensure([], () => r(require('../views/goods-detail')), 'goods-detail')
export default [{
path: '/',
......@@ -43,5 +44,9 @@ export default [{
path: '/not-found',
component: notFound
},
{
path: '/goods-detail',
component: goodsDetail
},
]
}]
<template>
<div class="goods-details-wrapper">
商品详情页面
</div>
</template>
<script>
export default {
}
</script>
<style lang="less" scoped>
.goods-details-wrapper {
font-size: 14px;
}
</style>
\ No newline at end of file
<template>
<div class="not-found">
<img class="img" src="~@/images/no-content.png" alt="" />
<p class="tip">此课程已下架,无法查看</p>
<img class="img" src="~@/images/no-content.png" alt />
<p class="tip">{{tips}}</p>
<p class="tip-2">更多内容,请前往云鹊医APP学习</p>
</div>
</template>
<script>
export default {
data() {
return {};
return {
tips: "此课程已下架,无法查看",
fromPage: "2"
};
},
mounted() {
this.fromPage = this.$route.query.fromPage || '1'; // 1: 来处项目详情页; 2: 来处课程详情页
if(this.fromPage == 2) {
this.tips = "此项目已下架, 无法查看";
}
},
methods: {
}
methods: {}
};
</script>
<style lang="less" scoped>
.not-found {
.img{
.img {
display: block;
width: 120px;
margin: 100px auto 0;
}
.tip{
font-size: 15px;
.tip {
font-size: 18px;
font-weight: 700;
color: #373839;
text-align: center;
}
.tip-2 {
margin-top: 12px;
font-size: 14px;
font-weight: 400;
color: #676869;
text-align: center;
}
}
......
......@@ -113,19 +113,19 @@
<div v-if="!hasBindCard" style="padding-top: 60px"></div>
<!-- <div v-if="!hasBindCard && !isWeb" style="padding-top: 30px"></div> -->
<!-- <BindCardButton
v-if="!hasBindCard && !isWeb"
<BindCardButton
v-if="!hasBindCard"
:cardInfo="cardInfo"
@changeClick="changeClick"
@gotoBuy="confirm"
></BindCardButton>-->
></BindCardButton>
<BindCardButtonShare
<!-- <BindCardButtonShare
v-if="!hasBindCard"
:cardInfo="cardInfo"
@changeClick="changeClick"
@gotoBuy="confirm"
></BindCardButtonShare>
></BindCardButtonShare> -->
<!--去激活-->
<ChangeCard
......@@ -204,7 +204,8 @@ import { getWebPageUrl, gotoPage, getAppVersion } from "@/utils/index";
import { mapGetters, mapActions } from "vuex";
import vueFilters from "@/utils/filter";
import { Toast } from "vant";
import BindCardButtonShare from "@/components/cme/bind-card-button-share";
import BindCardButton from "@/components/cme/bind-card-button";
// import BindCardButtonShare from "@/components/cme/bind-card-button-share";
import ChangeCard from "@/components/cme/change-card";
import CourseCovers from "@/components/course/course-covers";
import DownloadButton from "@/components/course/download-button";
......@@ -328,7 +329,8 @@ export default {
ExjumperButton,
// CommonAdertImg,
NoMoreContent,
BindCardButtonShare,
BindCardButton,
// BindCardButtonShare,
ChangeCard,
CourseCovers,
DownloadButton,
......@@ -390,7 +392,7 @@ export default {
this.GET(`portal/shareParam/queryByUuid`, param).then(res => {
if (res.code == "000000") {
this.shareParam = JSON.parse(res.data || "{}");
this.projectId = this.shareParam.projectId || 0; // 797
this.projectId = this.shareParam.projectId || 797; // 797
this.getProjectInfoById();
console.log('queryByUuid', res);
}
......@@ -524,8 +526,9 @@ export default {
// this.$sendBuriedData({
// component_tag: `882#88203`
// });
window.location.href =
"https://a.app.qq.com/o/simple.jsp?pkgname=com.picahealth.yunque";
let jumpUrl = getWebPageUrl(`profexam/#/goods-detail?goodsId=${this.goodsId}&token=${this.token}`);
window.location.href = jumpUrl;
// "https://a.app.qq.com/o/simple.jsp?pkgname=com.picahealth.yunque";
},
// 首次进入考试时记录(点击‘我知道了’时调用)
......@@ -777,6 +780,9 @@ export default {
console.log("share success...");
}
);
} else {
_this.showLoading = false;
_this.$router.replace('/not-found?fromPage=2');
}
});
},
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册