diff --git a/common/api.js b/common/api.js
index 256ba24..e9f5915 100644
--- a/common/api.js
+++ b/common/api.js
@@ -1,8 +1,8 @@
// appId: 正式 null | 测试 null
export const DEV = "dev"; // dev 测试 | prod 正式
export const VERSION = '1.0.0'; // 版本号
-export const DEVURL = 'http://192.168.111.224'; // 测试服请求地址
-// export const DEVURL = 'https://blinddate.lanzulive.com'; // 测试服请求地址
+export const DEVURL = 'https://blinddate.lanzulive.com'; // 测试服请求地址
+// export const DEVURL = 'http://192.168.111.224'; // 测试服请求地址
export const PRODURL = ''; // 正式服请求地址
export const CALLBACKURL = 'http://192.168.111.220:8080'; // 重定向地址(H5授权换取code回调地址)
export const APPID = 'wx98e64ab875b2553e'; // 公众号appid
diff --git a/common/http.js b/common/http.js
index cc60597..a86848e 100644
--- a/common/http.js
+++ b/common/http.js
@@ -44,6 +44,9 @@ function $http(url, data = {}, options = {}){
// #ifdef APP-PLUS
data.platform = 'app'; // 来自app平台,其他平台写法类似
// #endif
+ // #ifdef H5
+ data.platform = 'h5'; // 来自app平台,其他平台写法类似
+ // #endif
// 当前小程序版本号
data.version = that.API.VERSION;
// 获取设备唯一deviceId,如果没有,自动生成一个
diff --git a/common/styles/sharedIconFont.css b/common/styles/sharedIconFont.css
index eb45c93..d4445f9 100644
--- a/common/styles/sharedIconFont.css
+++ b/common/styles/sharedIconFont.css
@@ -1,8 +1,8 @@
@font-face {
font-family: "le"; /* Project id 2758976 */
- src: url('//at.alicdn.com/t/font_2758976_blqjbbep8zo.woff2?t=1629876001355') format('woff2'),
- url('//at.alicdn.com/t/font_2758976_blqjbbep8zo.woff?t=1629876001355') format('woff'),
- url('//at.alicdn.com/t/font_2758976_blqjbbep8zo.ttf?t=1629876001355') format('truetype');
+ src: url('//at.alicdn.com/t/font_2758976_ab62fotvipq.woff2?t=1630381533626') format('woff2'),
+ url('//at.alicdn.com/t/font_2758976_ab62fotvipq.woff?t=1630381533626') format('woff'),
+ url('//at.alicdn.com/t/font_2758976_ab62fotvipq.ttf?t=1630381533626') format('truetype');
}
.le {
@@ -13,6 +13,26 @@
-moz-osx-font-smoothing: grayscale;
}
+.lf-icon-home:before {
+ content: "\e759";
+}
+
+.lf-icon-jiantoushang:before {
+ content: "\e619";
+}
+
+.lf-icon-jiantouxia:before {
+ content: "\e61a";
+}
+
+.lf-icon-jiantouyou:before {
+ content: "\e61b";
+}
+
+.lf-icon-jiantouzuo:before {
+ content: "\e61c";
+}
+
.lf-icon-xingxing-kong:before {
content: "\e649";
}
diff --git a/components/lf-nav/lf-nav.vue b/components/lf-nav/lf-nav.vue
new file mode 100644
index 0000000..6d3d12b
--- /dev/null
+++ b/components/lf-nav/lf-nav.vue
@@ -0,0 +1,191 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ title }}
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/components/lf-tabbar/animate.scss b/components/lf-tabbar/animate.scss
new file mode 100644
index 0000000..b07e0db
--- /dev/null
+++ b/components/lf-tabbar/animate.scss
@@ -0,0 +1,149 @@
+.animate__animated {
+ animation-duration: 0.5s;
+ animation-fill-mode: both;
+}
+
+@keyframes zoomIn {
+ from {
+ opacity: 0;
+ -webkit-transform: scale3d(0.3, 0.3, 0.3);
+ transform: scale3d(0.3, 0.3, 0.3);
+ }
+
+ 50% {
+ opacity: 1;
+ }
+}
+
+.animate__zoomIn {
+ animation-name: zoomIn;
+}
+
+@keyframes bounce {
+
+ from,
+ 20%,
+ 53%,
+ to {
+ -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
+ animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
+ -webkit-transform: translate3d(0, 0, 0);
+ transform: translate3d(0, 0, 0);
+ }
+
+ 40%,
+ 43% {
+ animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
+ transform: translate3d(0, -30px, 0) scaleY(1.1);
+ }
+
+ 70% {
+ animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
+ transform: translate3d(0, -15px, 0) scaleY(1.05);
+ }
+
+ 80% {
+ transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
+ transform: translate3d(0, 0, 0) scaleY(0.95);
+ }
+
+ 90% {
+ transform: translate3d(0, -4px, 0) scaleY(1.02);
+ }
+}
+
+.animate__bounce {
+ animation-name: bounce;
+ transform-origin: center bottom;
+}
+
+@keyframes rubberBand {
+ from {
+ transform: scale3d(1, 1, 1);
+ }
+
+ 30% {
+ transform: scale3d(1.25, 0.75, 1);
+ }
+
+ 40% {
+ transform: scale3d(0.75, 1.25, 1);
+ }
+
+ 50% {
+ transform: scale3d(1.15, 0.85, 1);
+ }
+
+ 65% {
+ transform: scale3d(0.95, 1.05, 1);
+ }
+
+ 75% {
+ transform: scale3d(1.05, 0.95, 1);
+ }
+
+ to {
+ transform: scale3d(1, 1, 1);
+ }
+}
+
+.animate__rubberBand {
+ animation-name: rubberBand;
+}
+
+@keyframes bounceIn {
+
+ from,
+ 20%,
+ 40%,
+ 60%,
+ 80%,
+ to {
+ animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
+ }
+
+ 0% {
+ opacity: 0;
+ transform: scale3d(0.3, 0.3, 0.3);
+ }
+
+ 20% {
+ transform: scale3d(1.1, 1.1, 1.1);
+ }
+
+ 40% {
+ transform: scale3d(0.9, 0.9, 0.9);
+ }
+
+ 60% {
+ opacity: 1;
+ transform: scale3d(1.03, 1.03, 1.03);
+ }
+
+ 80% {
+ transform: scale3d(0.97, 0.97, 0.97);
+ }
+
+ to {
+ opacity: 1;
+ transform: scale3d(1, 1, 1);
+ }
+}
+
+.animate__bounceIn {
+ animation-name: bounceIn;
+}
+
+@keyframes fadeIn {
+ from {
+ opacity: 0;
+ }
+
+ to {
+ opacity: 1;
+ }
+}
+
+.animate__fadeIn {
+ animation-name: fadeIn;
+}
\ No newline at end of file
diff --git a/components/lf-tabbar/lf-tabbar-item.vue b/components/lf-tabbar/lf-tabbar-item.vue
new file mode 100644
index 0000000..7e2cfc3
--- /dev/null
+++ b/components/lf-tabbar/lf-tabbar-item.vue
@@ -0,0 +1,258 @@
+
+
+
+
+
+
+
+
+ {{ iconCode }}
+
+
+
+ {{ hasInfo ? info : '' }}
+
+
+
+
+
+ {{ hasInfo ? info : '' }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ text || '' }}
+
+
+
+
+
+
+
diff --git a/components/lf-tabbar/lf-tabbar.vue b/components/lf-tabbar/lf-tabbar.vue
new file mode 100644
index 0000000..e95a5e3
--- /dev/null
+++ b/components/lf-tabbar/lf-tabbar.vue
@@ -0,0 +1,179 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/components/lf-tabbar/style.scss b/components/lf-tabbar/style.scss
new file mode 100644
index 0000000..2123402
--- /dev/null
+++ b/components/lf-tabbar/style.scss
@@ -0,0 +1,121 @@
+.lb-tabbar-content {
+ /* #ifndef APP-NVUE */
+ display: flex;
+ /* #endif */
+ flex-direction: row;
+ align-items: center;
+ justify-content: center;
+}
+
+.lb-tabbar--fixed {
+ position: fixed;
+ left: 0;
+ right: 0;
+ bottom: 0;
+}
+
+.lb-tabbar-border {
+ height: 1px;
+ position: absolute;
+ left: 0;
+ right: 0;
+ top: 0;
+ transform: scaleY(0.5);
+}
+
+/* #ifndef APP-NVUE */
+lb-tabbar-item {
+ flex: 1;
+}
+
+/* #endif */
+
+.lb-tabbar-item {
+ flex: 1;
+ /* #ifndef APP-NVUE */
+ display: flex;
+ /* #endif */
+ flex-direction: column;
+ align-items: center;
+ justify-content: center;
+ position: relative;
+ // justify-content: flex-end;
+}
+
+.lb-tabbar-item__text {
+ overflow: hidden;
+}
+
+.lb-tabbar-item__text--active {
+ transition-property: color;
+ transition-duration: 0.3s;
+}
+
+.lb-tabbar-item__icon {
+ position: relative;
+}
+
+.lb-tabbar-icon {
+ position: relative;
+ /* #ifndef APP-NVUE */
+ line-height: 1;
+ font-size: inherit;
+ text-rendering: auto;
+ -webkit-font-smoothing: antialiased;
+ /* #endif */
+}
+
+.lb-tabbar-item__icon--active {
+ transition-property: color;
+ transition-duration: 0.3s;
+}
+
+.lb-my-active{
+ transform: translateY(-16.5px) scale(2) !important;
+ color: yellow;
+}
+.lb-tabbar-item__icon--raisede {
+ background-color: #fff;
+ border-radius: 9999px;
+ position: relative;
+ /* #ifndef APP-NVUE */
+ z-index: 1;
+ /* #endif */
+}
+
+.lb-tabbar-item__dot--style {
+ border-radius: 9999px;
+ position: absolute;
+ top: 0;
+ right: 0;
+}
+
+.lb-tabbar-item__dot {
+ width: 8px;
+ height: 8px;
+}
+
+.lb-tabbar-item__dot--nvue {
+ opacity: 0;
+ transition-property: opacity;
+ transition-duration: 0.1s;
+}
+
+.lb-tabbar-item__dot--show {
+ opacity: 1;
+}
+
+.lb-tabbar-item__dot--info {
+ height: 14px;
+ line-height: 14px;
+ /* #ifdef APP-NVUE */
+ flex: 1;
+ /* #endif */
+ margin-top: 5px;
+ font-size: 12px;
+ padding-left: 4px;
+ padding-right: 4px;
+ text-align: center;
+ color: #fff;
+ transform: translate(50%, -50%);
+}
\ No newline at end of file
diff --git a/components/lf-tabbar/utils.js b/components/lf-tabbar/utils.js
new file mode 100644
index 0000000..faf27b6
--- /dev/null
+++ b/components/lf-tabbar/utils.js
@@ -0,0 +1,10 @@
+export function getPx (val) {
+ if (!val) return 0
+ if (val.indexOf('rpx') > -1) {
+ val = +val.replace('rpx', '')
+ val = uni.upx2px(val)
+ } else {
+ val = +val.replace('px', '')
+ }
+ return val
+}
diff --git a/pages.json b/pages.json
index 678e471..6ac1031 100644
--- a/pages.json
+++ b/pages.json
@@ -245,7 +245,8 @@
{
"path": "pages/test/test",
"style": {
- "navigationBarTitleText": "测试专用"
+ "navigationBarTitleText": "测试专用",
+ "navigationStyle": "custom"
}
},
{
diff --git a/pages/test/test.vue b/pages/test/test.vue
index a0644f2..35eb303 100644
--- a/pages/test/test.vue
+++ b/pages/test/test.vue
@@ -26,6 +26,7 @@
-->
+
@@ -37,6 +38,22 @@
+ {{ item }}
+ 欧耶
+
+
+
+ {{ item.text }}
+
+
@@ -46,22 +63,55 @@
}