新增扫描二维码功能以及h5复制链接app中打开连接功能删除无用的node包

This commit is contained in:
lemon橪
2021-05-18 16:29:34 +08:00
parent 49eb30f265
commit 8fe64bd3c6
1615 changed files with 226 additions and 58539 deletions

View File

@@ -508,7 +508,7 @@ export default {
}
})
.catch((err) => {
console.error(err);
uni.hideLoading();
});
} else {

View File

@@ -21,10 +21,5 @@ export default {
</script>
<style lang="scss" scoped>
.slot-wrap {
display: flex;
align-items: center;
flex: 1;
padding: 0 30rpx;
}
</style>

View File

@@ -1,5 +1,6 @@
/** 配置楼层模块的跳转 */
export function modelnavigateTo(item) {
export function modelNavigateTo(item) {
let val = item.url;
switch (val.___type) {
case "goods":

View File

@@ -9,7 +9,7 @@
</template>
<script>
import { modelnavigateTo } from "./tpl";
import { modelNavigateTo } from "./tpl";
export default {
title: "导航栏",
props: ["res"],
@@ -27,7 +27,7 @@ export default {
},
methods: {
clickSwiper(index) {
modelnavigateTo(this.res.list[index]);
modelNavigateTo(this.res.list[index]);
},
},
};

View File

@@ -1,20 +1,20 @@
<template>
<div class="layout">
<u-image width="140rpx" height="140rpx" @click="modelnavigateTo(item)" class="image-mode" v-for="(item,index) in res.list" :key="index" :src="item.img" alt="">
<u-image width="140rpx" height="140rpx" @click="modelNavigateTo(item)" class="image-mode" v-for="(item,index) in res.list" :key="index" :src="item.img" alt="">
<u-loading slot="loading"></u-loading>
</u-image>
</div>
</template>
<script>
import { modelnavigateTo } from "./tpl";
import { modelNavigateTo } from "./tpl";
export default {
title: "五列单行图片模块",
props: ["res"],
data() {
return {
modelnavigateTo,
modelNavigateTo,
};
},
mounted() {

View File

@@ -1,7 +1,7 @@
<template>
<div class="layout">
<u-image height="175rpx" width="175rpx" @click="modelnavigateTo(item)" class="image-mode" :src="item.img" v-for="(item,index) in res.list" :key="index" >
<u-image height="175rpx" width="175rpx" @click="modelNavigateTo(item)" class="image-mode" :src="item.img" v-for="(item,index) in res.list" :key="index" >
<u-loading slot="loading"></u-loading>
</u-image>
@@ -10,13 +10,13 @@
<script>
import {modelnavigateTo} from './tpl'
import {modelNavigateTo} from './tpl'
export default {
title: "四列单行图片模块",
props: ["res"],
data () {
return {
modelnavigateTo,
modelNavigateTo,
}
},
mounted() {

View File

@@ -1,17 +1,17 @@
<template>
<div class="layout">
<div class="flex-one" @click="modelnavigateTo(res.list[0])">
<div class="flex-one" @click="modelNavigateTo(res.list[0])">
<u-image width="100%" height="280rpx" :src="res.list[0].img" alt=""></u-image>
</div>
</div>
</template>
<script>
import { modelnavigateTo } from "./tpl";
import { modelNavigateTo } from "./tpl";
export default {
data() {
return {
modelnavigateTo,
modelNavigateTo,
};
},
props: ["res"],

View File

@@ -1,14 +1,14 @@
<template>
<div class="layout">
<u-image @click="modelnavigateTo(item)" height="240rpx" width="240rpx" class="image-mode" :src="item.img" v-for="(item, index) in res.list" :key="index">
<u-image @click="modelNavigateTo(item)" height="240rpx" width="240rpx" class="image-mode" :src="item.img" v-for="(item, index) in res.list" :key="index">
<u-loading slot="loading"></u-loading>
</u-image>
</div>
</template>
<script>
import { modelnavigateTo } from "./tpl";
import { modelNavigateTo } from "./tpl";
export default {
title: "三列单行图片模块",
@@ -18,7 +18,7 @@ export default {
},
data() {
return {
modelnavigateTo,
modelNavigateTo,
};
},
};

View File

@@ -1,12 +1,12 @@
<template>
<div class="layout">
<div class="flex-two">
<div class="flex-item" @click="modelnavigateTo(res.list[0])">
<div class="flex-item" @click="modelNavigateTo(res.list[0])">
<u-image height="325rpx" width="100%" mode="scaleToFill" :src="res.list[0].img" alt>
<u-loading slot="loading"></u-loading>
</u-image>
</div>
<div class="flex-item" @click="modelnavigateTo(res.list[1])">
<div class="flex-item" @click="modelNavigateTo(res.list[1])">
<u-image height="325rpx" width="100%" mode="scaleToFill" :src="res.list[1].img" alt>
<u-loading slot="loading"></u-loading>
</u-image>
@@ -16,7 +16,7 @@
</template>
<script>
import uImage from "@/uview-ui/components/u-image/u-image.vue";
import { modelnavigateTo } from "./tpl";
import { modelNavigateTo } from "./tpl";
export default {
components: { uImage },
title: "两张横图",
@@ -26,7 +26,7 @@ export default {
},
data() {
return {
modelnavigateTo,
modelNavigateTo,
};
},
};

View File

@@ -7,7 +7,7 @@
<div>更多</div>
</div>
<div class="join-box">
<div class="join-item" @click="modelnavigateTo(item)" v-for="item in 4" :key="item">
<div class="join-item" @click="modelNavigateTo(item)" v-for="item in 4" :key="item">
<div class="item-img-box">
<img
@@ -29,12 +29,12 @@
</template>
<script>
import {modelnavigateTo} from './tpl'
import {modelNavigateTo} from './tpl'
export default {
props: ["res"],
data () {
return {
modelnavigateTo,
modelNavigateTo,
}
},
};

View File

@@ -1,18 +1,18 @@
<template>
<div class="layout">
<div class="view-height-150" @click="modelnavigateTo(res.list[0])">
<div class="view-height-150" @click="modelNavigateTo(res.list[0])">
<u-image width="100%" height="300rpx" class="image-mode" :src="res.list[0].img" >
<u-loading slot="loading"></u-loading>
</u-image>
</div>
<div class="view-height-150">
<div class="view-height-75" @click="modelnavigateTo(res.list[1])">
<div class="view-height-75" @click="modelNavigateTo(res.list[1])">
<u-image width="100%" height="150rpx" class="image-mode" :src="res.list[1].img" alt >
<u-loading slot="loading"></u-loading>
</u-image>
</div>
<div class="view-height-75" @click="modelnavigateTo(res.list[2])">
<div class="view-height-75" @click="modelNavigateTo(res.list[2])">
<u-image width="100%" height="150rpx" class="image-mode" :src="res.list[2].img" alt >
<u-loading slot="loading"></u-loading>
</u-image>
@@ -22,13 +22,13 @@
</template>
<script>
import {modelnavigateTo} from './tpl'
import {modelNavigateTo} from './tpl'
export default {
title: "左一右二",
props: ["res"],
data () {
return {
modelnavigateTo,
modelNavigateTo,
}
},
mounted() {

View File

@@ -2,27 +2,27 @@
<template>
<div class="layout ">
<div class="view-height-150">
<div class="view-height-75" @click="modelnavigateTo(res.list[0])">
<div class="view-height-75" @click="modelNavigateTo(res.list[0])">
<u-image class="image-mode" width="100%" height="150rpx" :src="res.list[0].img" ></u-image>
</div>
<div class="view-height-75" @click="modelnavigateTo(res.list[1])">
<div class="view-height-75" @click="modelNavigateTo(res.list[1])">
<u-image class="image-mode" width="100%" height="150rpx" :src="res.list[1].img" ></u-image>
</div>
</div>
<div class="view-height-150" @click="modelnavigateTo(res.list[2])">
<div class="view-height-150" @click="modelNavigateTo(res.list[2])">
<u-image class="image-mode" width="100%" height="300rpx" :src="res.list[2].img" ></u-image>
</div>
</div>
</template>
<script>
import {modelnavigateTo} from './tpl'
import {modelNavigateTo} from './tpl'
export default {
title: "左二右一",
props: ["res"],
data () {
return {
modelnavigateTo,
modelNavigateTo,
}
},
mounted() {

View File

@@ -1,7 +1,7 @@
<template>
<div class="layout">
<div class="menu-list">
<div class="menu-item" @click="modelnavigateTo(item)" v-for="(item, index) in res.list" :key="index">
<div class="menu-item" @click="modelNavigateTo(item)" v-for="(item, index) in res.list" :key="index">
<div>
<u-image
width="88rpx"
@@ -18,12 +18,12 @@
</div>
</template>
<script>
import {modelnavigateTo} from './tpl'
import {modelNavigateTo} from './tpl'
export default {
props: ["res"],
data () {
return {
modelnavigateTo,
modelNavigateTo,
}
}
};

View File

@@ -2,13 +2,13 @@
<template>
<div class="layout">
<div class="view-list">
<div class="view-item" @click="modelnavigateTo(res.list[0])">
<div class="view-item" @click="modelNavigateTo(res.list[0])">
<div class="-item-tilte">{{res.list[0].title}}</div>
<div class="-item-image">
<u-image width="120rpx" mode="scaleToFill" height="120rpx" :src="res.list[0].img" alt ></u-image>
</div>
</div>
<div class="view-item" @click="modelnavigateTo(res.list[1])">
<div class="view-item" @click="modelNavigateTo(res.list[1])">
<div class="-item-tilte">{{res.list[1].title}}</div>
<div class="-item-image">
<u-image width="120rpx" mode="scaleToFill" height="120rpx" :src="res.list[1].img" alt ></u-image>
@@ -16,13 +16,13 @@
</div>
</div>
<div class="view-list">
<div class="view-item" @click="modelnavigateTo(res.list[2])">
<div class="view-item" @click="modelNavigateTo(res.list[2])">
<div class="-item-tilte">{{res.list[2].title}}</div>
<div class="-item-image">
<u-image width="120rpx" mode="scaleToFill" height="120rpx" :src="res.list[2].img" alt ></u-image>
</div>
</div>
<div class="view-item" @click="modelnavigateTo(res.list[3])">
<div class="view-item" @click="modelNavigateTo(res.list[3])">
<div class="-item-tilte">{{res.list[3].title}}</div>
<div class="-item-image">
<u-image width="120rpx" mode="scaleToFill" height="120rpx" :src="res.list[3].img" alt ></u-image>
@@ -34,13 +34,13 @@
<script>
import {modelnavigateTo} from './tpl'
import {modelNavigateTo} from './tpl'
export default {
title: "文字图片模板",
props: ["res"],
data () {
return {
modelnavigateTo,
modelNavigateTo,
}
},
mounted() {

View File

@@ -1,18 +1,18 @@
<template>
<div class="layout">
<div class="view-width-100" @click="modelnavigateTo(res.list[0])">
<div class="view-width-100" @click="modelNavigateTo(res.list[0])">
<u-image class="image-mode" width="100%" height="200rpx" :src="res.list[0].img">
<u-loading slot="loading"></u-loading>
</u-image>
</div>
<div class="view-width-100" @click="modelnavigateTo(res.list[1])">
<div class="view-width-100" @click="modelNavigateTo(res.list[1])">
<div class="view-height-85">
<u-image class="image-mode" width="100%" height="170rpx" :src="res.list[1].img">
<u-loading slot="loading"></u-loading>
</u-image>
</div>
<div class="view-height-85" @click="modelnavigateTo(res.list[2])">
<div class="view-height-85" @click="modelNavigateTo(res.list[2])">
<u-image class="image-mode" width="100%" height="170rpx" :src="res.list[2].img">
<u-loading slot="loading"></u-loading>
</u-image>
@@ -22,13 +22,13 @@
</template>
<script>
import { modelnavigateTo } from "./tpl";
import { modelNavigateTo } from "./tpl";
export default {
title: "上一下二",
props: ["res"],
data() {
return {
modelnavigateTo,
modelNavigateTo,
};
},
mounted() {},

View File

@@ -1,7 +1,7 @@
<template>
<div class="layout">
<div class="view-width-100">
<div class="view-height-85" @click="modelnavigateTo(res.list[0])">
<div class="view-height-85" @click="modelNavigateTo(res.list[0])">
<u-image
class="image-mode"
height="170rpx"
@@ -11,7 +11,7 @@
><u-loading slot="loading"></u-loading
></u-image>
</div>
<div class="view-height-85" @click="modelnavigateTo(res.list[1])">
<div class="view-height-85" @click="modelNavigateTo(res.list[1])">
<u-image
class="image-mode"
height="170rpx"
@@ -22,7 +22,7 @@
></u-image>
</div>
</div>
<div class="view-width-100" @click="modelnavigateTo(res.list[2])">
<div class="view-width-100" @click="modelNavigateTo(res.list[2])">
<u-image
class="image-mode"
height="200rpx"
@@ -35,13 +35,13 @@
</template>
<script>
import {modelnavigateTo} from './tpl'
import {modelNavigateTo} from './tpl'
export default {
title: "上二下一",
props: ["res"],
data () {
return {
modelnavigateTo,
modelNavigateTo,
}
},
mounted() {

View File

@@ -1,17 +0,0 @@
<template>
<div class="layout">请选择风格</div>
</template>
<script>
export default {
destroyed(){
}
}
</script>
<style scoped lang="scss">
@import './tpl.scss';
.layout{
height: 100px;
}
</style>

View File

@@ -2,8 +2,14 @@
<div class="wrapper">
<!-- uni 中不能使用 vue component 所以用if判断每个组件 -->
<div v-for="(item,index) in pageData.list" :key="index">
<u-navbar v-if="item.type == 'search'" :is-back="false">
<u-navbar class="navbar" v-if="item.type == 'search'" :is-back="false">
<search style="width:100%" :res="item.options" />
<!-- #ifndef H5 -->
<!-- 扫码功能 不兼容h5 详情文档: https://uniapp.dcloud.io/api/system/barcode?id=scancode -->
<div slot="right" class="navbar-right">
<u-icon name="scan" @click="scan()" color="#666" size="50"></u-icon>
</div>
<!-- #endif -->
</u-navbar>
<carousel v-if="item.type == 'carousel'" :res="item.options" />
<titleLayout v-if="item.type == 'title'" :res="item.options" />
@@ -30,7 +36,6 @@
<script>
// 引用组件
import tpl_banner from "@/pages/tabbar/home/template/tpl_banner";
import tpl_title from "@/pages/tabbar/home/template/tpl_title";
import tpl_left_one_right_two from "@/pages/tabbar/home/template/tpl_left_one_right_two";
@@ -49,11 +54,12 @@ import tpl_join_group from "@/pages/tabbar/home/template/tpl_join_group";
import tpl_integral from "@/pages/tabbar/home/template/tpl_integral";
import tpl_spike from "@/pages/tabbar/home/template/tpl_spike";
import tpl_group from "@/pages/tabbar/home/template/tpl_group";
import tpl_ad_list from "@/pages/tabbar/home/template/tpl_view_list";
import tpl_activity_list from "@/pages/tabbar/home/template/tpl_view_list";
import tpl_goods from "@/pages/tabbar/home/template/tpl_goods";
// 结束引用组件
import { getFloorData } from "@/api/home";
import { modelNavigateTo } from "./template/tpl.js"; //跳转路径
import permision from "@/js_sdk/wa-permission/permission.js"; //权限
export default {
data() {
return {
@@ -80,11 +86,11 @@ export default {
integral: tpl_integral,
spike: tpl_spike,
group: tpl_group,
tpl_ad_list,
tpl_activity_list,
},
mounted() {
this.init();
},
methods: {
@@ -98,9 +104,42 @@ export default {
}
});
},
/**
* 唤醒客户端扫码
* 没权限去申请权限,有权限获取扫码功能
*/
scan() {
if (permision.judgeIosPermission("camera")) {
uni.scanCode({
success: function (res) {
let path = encodeURIComponent(res.result);
setTimeout(() => {
uni.navigateTo({
url: "/pages/tabbar/home/web-view?src=" + path,
});
}, 100);
},
});
} else {
uni.showModal({
title: "提示",
content: "您已经关闭相机权限,去设置",
success: function (res) {
if (res.confirm) {
plus.runtime.openURL("app-settings:");
}
},
});
}
},
},
};
</script>
<style>
<style scoped lang="scss">
.navbar-right {
padding: 0 16rpx 0 0;
}
</style>

View File

@@ -0,0 +1,32 @@
<template>
<view class="web-view">
<web-view :webview-styles="webviewStyles" :src="src"></web-view>
</view>
</template>
<script>
export default {
data() {
return {
webviewStyles: {
progress: {
color: this.$lightColor,
},
},
src: "",
};
},
onLoad(params) {
this.src = decodeURIComponent(params.src);
},
};
</script>
<style lang="scss" scoped>
.web-view {
/deep/ .web-view {
padding: 0;
margin: 0;
}
}
</style>