初始化提交
40
README.md
Normal file
@@ -0,0 +1,40 @@
|
||||
## 环境准备 - 请关注项目更新及时拉取最新版本
|
||||
|
||||
|
||||
### nodejs 下载
|
||||
https://nodejs.org/en/
|
||||
选择LTS 版本
|
||||
直接按照提示安装即可
|
||||
|
||||
|
||||
### 查看是否安装成功
|
||||
```
|
||||
node -v
|
||||
```
|
||||
|
||||
### 安装镜像
|
||||
```
|
||||
npm install -g cnpm --registry=https://registry.npm.taobao.org
|
||||
```
|
||||
|
||||
### clone 代码
|
||||
```
|
||||
git clone tl@git.jiagouedu.com:java-vip/tulingmall-front.git
|
||||
```
|
||||
|
||||
### 下载依赖
|
||||
```
|
||||
cnpm install
|
||||
```
|
||||
|
||||
### 运行项目
|
||||
```
|
||||
cnpm run serve
|
||||
```
|
||||
|
||||
### 说明
|
||||
|
||||
课上的跨域项目位置(前端工程目录下面的资料目录):
|
||||
```
|
||||
http://git.tulingxueyuan.cn/java-vip/tulingmall-front/src/master/%e8%b5%84%e6%96%99
|
||||
```
|
||||
14
babel.config.js
Normal file
@@ -0,0 +1,14 @@
|
||||
module.exports = {
|
||||
"presets": [
|
||||
'@vue/cli-plugin-babel/preset'
|
||||
],
|
||||
"plugins": [
|
||||
[
|
||||
"component",
|
||||
{
|
||||
"libraryName": "element-ui",
|
||||
"styleLibraryName": "theme-chalk"
|
||||
}
|
||||
]
|
||||
]
|
||||
}
|
||||
53560
package-lock.json
generated
Normal file
70
package.json
Normal file
@@ -0,0 +1,70 @@
|
||||
{
|
||||
"name": "mall",
|
||||
"version": "0.1.0",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"serve": "vue-cli-service serve --mode=development",
|
||||
"test": "vue-cli-service serve --mode=test",
|
||||
"prev": "vue-cli-service serve --mode=prev",
|
||||
"build": "vue-cli-service build --mode=production",
|
||||
"lint": "vue-cli-service lint"
|
||||
},
|
||||
"dependencies": {
|
||||
"@babel/plugin-syntax-dynamic-import": "^7.7.4",
|
||||
"axios": "^0.19.0",
|
||||
"core-js": "^3.3.2",
|
||||
"font-awesome": "^4.7.0",
|
||||
"js-cookie": "^2.2.1",
|
||||
"node-sass": "latest",
|
||||
"qrcode": "^1.4.4",
|
||||
"qs": "^6.10.1",
|
||||
"sass": "^1.26.5",
|
||||
"vue": "^2.6.10",
|
||||
"vue-awesome-countdown": "^1.0.23",
|
||||
"vue-infinite-scroll": "^2.0.2",
|
||||
"vue-router": "^3.1.3",
|
||||
"vuex": "^3.1.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@vue/cli-plugin-babel": "^4.0.0",
|
||||
"@vue/cli-plugin-eslint": "^4.0.0",
|
||||
"@vue/cli-service": "^4.0.0",
|
||||
"axios": "^0.19.0",
|
||||
"babel-eslint": "^10.0.3",
|
||||
"babel-plugin-component": "^1.1.1",
|
||||
"element-ui": "^2.13.0",
|
||||
"eslint": "^5.16.0",
|
||||
"eslint-plugin-vue": "^5.0.0",
|
||||
"jsonp": "^0.2.1",
|
||||
"mockjs": "^1.1.0",
|
||||
"sass-loader": "^8.0.0",
|
||||
"vue-awesome-swiper": "^3.1.3",
|
||||
"vue-axios": "^2.1.5",
|
||||
"vue-cookie": "^1.1.4",
|
||||
"vue-lazyload": "^1.3.3",
|
||||
"vue-template-compiler": "^2.6.10"
|
||||
},
|
||||
"eslintConfig": {
|
||||
"root": true,
|
||||
"env": {
|
||||
"node": true
|
||||
},
|
||||
"extends": [
|
||||
"plugin:vue/essential",
|
||||
"eslint:recommended"
|
||||
],
|
||||
"rules": {},
|
||||
"parserOptions": {
|
||||
"parser": "babel-eslint"
|
||||
}
|
||||
},
|
||||
"postcss": {
|
||||
"plugins": {
|
||||
"autoprefixer": {}
|
||||
}
|
||||
},
|
||||
"browserslist": [
|
||||
"> 1%",
|
||||
"last 2 versions"
|
||||
]
|
||||
}
|
||||
3
public/.gitignore
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
node_modules/*
|
||||
.idea/*
|
||||
build/*
|
||||
BIN
public/favicon.ico
Normal file
|
After Width: | Height: | Size: 8.7 KiB |
BIN
public/imgs/ads/ads-1.png
Normal file
|
After Width: | Height: | Size: 45 KiB |
BIN
public/imgs/ads/ads-2.jpg
Normal file
|
After Width: | Height: | Size: 66 KiB |
BIN
public/imgs/ads/ads-3.png
Normal file
|
After Width: | Height: | Size: 39 KiB |
BIN
public/imgs/ads/ads-4.jpg
Normal file
|
After Width: | Height: | Size: 41 KiB |
BIN
public/imgs/banner-1.png
Normal file
|
After Width: | Height: | Size: 102 KiB |
BIN
public/imgs/detail/icon-loc.png
Normal file
|
After Width: | Height: | Size: 1.7 KiB |
BIN
public/imgs/detail/item-price.jpeg
Normal file
|
After Width: | Height: | Size: 24 KiB |
BIN
public/imgs/detail/phone-1.jpg
Normal file
|
After Width: | Height: | Size: 26 KiB |
BIN
public/imgs/detail/phone-2.jpg
Normal file
|
After Width: | Height: | Size: 19 KiB |
BIN
public/imgs/detail/phone-3.jpg
Normal file
|
After Width: | Height: | Size: 15 KiB |
BIN
public/imgs/detail/phone-4.jpg
Normal file
|
After Width: | Height: | Size: 24 KiB |
BIN
public/imgs/flash.jpg
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
public/imgs/icon-15day.png
Normal file
|
After Width: | Height: | Size: 1.9 KiB |
BIN
public/imgs/icon-7day.png
Normal file
|
After Width: | Height: | Size: 1.7 KiB |
BIN
public/imgs/icon-add.png
Normal file
|
After Width: | Height: | Size: 221 B |
BIN
public/imgs/icon-arrow.png
Normal file
|
After Width: | Height: | Size: 437 B |
BIN
public/imgs/icon-cart-checked.png
Normal file
|
After Width: | Height: | Size: 480 B |
BIN
public/imgs/icon-cart-hover.png
Normal file
|
After Width: | Height: | Size: 522 B |
BIN
public/imgs/icon-cart.png
Normal file
|
After Width: | Height: | Size: 582 B |
BIN
public/imgs/icon-close.png
Normal file
|
After Width: | Height: | Size: 484 B |
BIN
public/imgs/icon-down.png
Normal file
|
After Width: | Height: | Size: 665 B |
BIN
public/imgs/icon-gou.png
Normal file
|
After Width: | Height: | Size: 619 B |
BIN
public/imgs/icon-loc.png
Normal file
|
After Width: | Height: | Size: 682 B |
BIN
public/imgs/icon-no-data.png
Normal file
|
After Width: | Height: | Size: 113 KiB |
BIN
public/imgs/icon-post.png
Normal file
|
After Width: | Height: | Size: 2.1 KiB |
BIN
public/imgs/icon-search.png
Normal file
|
After Width: | Height: | Size: 1.4 KiB |
BIN
public/imgs/icon-setting.png
Normal file
|
After Width: | Height: | Size: 1.7 KiB |
BIN
public/imgs/icon-slides.png
Normal file
|
After Width: | Height: | Size: 1.2 KiB |
BIN
public/imgs/item-box-1.png
Normal file
|
After Width: | Height: | Size: 9.3 KiB |
BIN
public/imgs/item-box-2.png
Normal file
|
After Width: | Height: | Size: 12 KiB |
BIN
public/imgs/item-box-3.jpg
Normal file
|
After Width: | Height: | Size: 4.4 KiB |
BIN
public/imgs/item-box-4.jpg
Normal file
|
After Width: | Height: | Size: 5.1 KiB |
14
public/imgs/loading-svg/loading-balls.svg
Normal file
@@ -0,0 +1,14 @@
|
||||
<svg class="icon-loading" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32" width="32" height="32" fill="white">
|
||||
<path transform="translate(-8 0)" d="M4 12 A4 4 0 0 0 4 20 A4 4 0 0 0 4 12">
|
||||
<animateTransform attributeName="transform" type="translate" values="-8 0; 2 0; 2 0;" dur="0.8s" repeatCount="indefinite" begin="0" keytimes="0;.25;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8" calcMode="spline" />
|
||||
</path>
|
||||
<path transform="translate(2 0)" d="M4 12 A4 4 0 0 0 4 20 A4 4 0 0 0 4 12">
|
||||
<animateTransform attributeName="transform" type="translate" values="2 0; 12 0; 12 0;" dur="0.8s" repeatCount="indefinite" begin="0" keytimes="0;.35;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8" calcMode="spline" />
|
||||
</path>
|
||||
<path transform="translate(12 0)" d="M4 12 A4 4 0 0 0 4 20 A4 4 0 0 0 4 12">
|
||||
<animateTransform attributeName="transform" type="translate" values="12 0; 22 0; 22 0;" dur="0.8s" repeatCount="indefinite" begin="0" keytimes="0;.45;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8" calcMode="spline" />
|
||||
</path>
|
||||
<path transform="translate(24 0)" d="M4 12 A4 4 0 0 0 4 20 A4 4 0 0 0 4 12">
|
||||
<animateTransform attributeName="transform" type="translate" values="22 0; 32 0; 32 0;" dur="0.8s" repeatCount="indefinite" begin="0" keytimes="0;.55;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8" calcMode="spline" />
|
||||
</path>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.3 KiB |
17
public/imgs/loading-svg/loading-bars.svg
Normal file
@@ -0,0 +1,17 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32" width="32" height="32" fill="#ee7a23">
|
||||
<path transform="translate(2)" d="M0 12 V20 H4 V12z">
|
||||
<animate attributeName="d" values="M0 12 V20 H4 V12z; M0 4 V28 H4 V4z; M0 12 V20 H4 V12z; M0 12 V20 H4 V12z" dur="1.2s" repeatCount="indefinite" begin="0" keytimes="0;.2;.5;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8;0.2 0.8 0.4 0.8" calcMode="spline" />
|
||||
</path>
|
||||
<path transform="translate(8)" d="M0 12 V20 H4 V12z">
|
||||
<animate attributeName="d" values="M0 12 V20 H4 V12z; M0 4 V28 H4 V4z; M0 12 V20 H4 V12z; M0 12 V20 H4 V12z" dur="1.2s" repeatCount="indefinite" begin="0.2" keytimes="0;.2;.5;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8;0.2 0.8 0.4 0.8" calcMode="spline" />
|
||||
</path>
|
||||
<path transform="translate(14)" d="M0 12 V20 H4 V12z">
|
||||
<animate attributeName="d" values="M0 12 V20 H4 V12z; M0 4 V28 H4 V4z; M0 12 V20 H4 V12z; M0 12 V20 H4 V12z" dur="1.2s" repeatCount="indefinite" begin="0.4" keytimes="0;.2;.5;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8;0.2 0.8 0.4 0.8" calcMode="spline" />
|
||||
</path>
|
||||
<path transform="translate(20)" d="M0 12 V20 H4 V12z">
|
||||
<animate attributeName="d" values="M0 12 V20 H4 V12z; M0 4 V28 H4 V4z; M0 12 V20 H4 V12z; M0 12 V20 H4 V12z" dur="1.2s" repeatCount="indefinite" begin="0.6" keytimes="0;.2;.5;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8;0.2 0.8 0.4 0.8" calcMode="spline" />
|
||||
</path>
|
||||
<path transform="translate(26)" d="M0 12 V20 H4 V12z">
|
||||
<animate attributeName="d" values="M0 12 V20 H4 V12z; M0 4 V28 H4 V4z; M0 12 V20 H4 V12z; M0 12 V20 H4 V12z" dur="1.2s" repeatCount="indefinite" begin="0.8" keytimes="0;.2;.5;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8;0.2 0.8 0.4 0.8" calcMode="spline" />
|
||||
</path>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.7 KiB |
14
public/imgs/loading-svg/loading-bubbles.svg
Normal file
@@ -0,0 +1,14 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32" width="32" height="32" fill="#ee7a23">
|
||||
<circle transform="translate(8 0)" cx="0" cy="16" r="0">
|
||||
<animate attributeName="r" values="0; 4; 0; 0" dur="1.2s" repeatCount="indefinite" begin="0"
|
||||
keytimes="0;0.2;0.7;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8;0.2 0.6 0.4 0.8" calcMode="spline" />
|
||||
</circle>
|
||||
<circle transform="translate(16 0)" cx="0" cy="16" r="0">
|
||||
<animate attributeName="r" values="0; 4; 0; 0" dur="1.2s" repeatCount="indefinite" begin="0.3"
|
||||
keytimes="0;0.2;0.7;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8;0.2 0.6 0.4 0.8" calcMode="spline" />
|
||||
</circle>
|
||||
<circle transform="translate(24 0)" cx="0" cy="16" r="0">
|
||||
<animate attributeName="r" values="0; 4; 0; 0" dur="1.2s" repeatCount="indefinite" begin="0.6"
|
||||
keytimes="0;0.2;0.7;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8;0.2 0.6 0.4 0.8" calcMode="spline" />
|
||||
</circle>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 949 B |
14
public/imgs/loading-svg/loading-cubes.svg
Normal file
@@ -0,0 +1,14 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32" width="32" height="32" fill="white">
|
||||
<path transform="translate(-8 0)" d="M0 12 V20 H8 V12z">
|
||||
<animateTransform attributeName="transform" type="translate" values="-8 0; 2 0; 2 0;" dur="0.8s" repeatCount="indefinite" begin="0" keytimes="0;.25;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8" calcMode="spline" />
|
||||
</path>
|
||||
<path transform="translate(2 0)" d="M0 12 V20 H8 V12z">
|
||||
<animateTransform attributeName="transform" type="translate" values="2 0; 12 0; 12 0;" dur="0.8s" repeatCount="indefinite" begin="0" keytimes="0;.35;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8" calcMode="spline" />
|
||||
</path>
|
||||
<path transform="translate(12 0)" d="M0 12 V20 H8 V12z">
|
||||
<animateTransform attributeName="transform" type="translate" values="12 0; 22 0; 22 0;" dur="0.8s" repeatCount="indefinite" begin="0" keytimes="0;.45;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8" calcMode="spline" />
|
||||
</path>
|
||||
<path transform="translate(24 0)" d="M0 12 V20 H8 V12z">
|
||||
<animateTransform attributeName="transform" type="translate" values="22 0; 32 0; 32 0;" dur="0.8s" repeatCount="indefinite" begin="0" keytimes="0;.55;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.6 0.4 0.8" calcMode="spline" />
|
||||
</path>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.2 KiB |
11
public/imgs/loading-svg/loading-cylon-red.svg
Normal file
@@ -0,0 +1,11 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 14 32 18" width="32" height="4" fill="#f20" preserveAspectRatio="none">
|
||||
<path opacity="0.8" transform="translate(0 0)" d="M2 14 V18 H6 V14z">
|
||||
<animateTransform attributeName="transform" type="translate" values="0 0; 24 0; 0 0" dur="2s" begin="0" repeatCount="indefinite" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" calcMode="spline" />
|
||||
</path>
|
||||
<path opacity="0.5" transform="translate(0 0)" d="M0 14 V18 H8 V14z">
|
||||
<animateTransform attributeName="transform" type="translate" values="0 0; 24 0; 0 0" dur="2s" begin="0.1s" repeatCount="indefinite" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" calcMode="spline" />
|
||||
</path>
|
||||
<path opacity="0.25" transform="translate(0 0)" d="M0 14 V18 H8 V14z">
|
||||
<animateTransform attributeName="transform" type="translate" values="0 0; 24 0; 0 0" dur="2s" begin="0.2s" repeatCount="indefinite" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" calcMode="spline" />
|
||||
</path>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 980 B |
11
public/imgs/loading-svg/loading-cylon.svg
Normal file
@@ -0,0 +1,11 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32" width="32" height="32" fill="white">
|
||||
<path transform="translate(0 0)" d="M0 12 V20 H4 V12z">
|
||||
<animateTransform attributeName="transform" type="translate" values="0 0; 28 0; 0 0; 0 0" dur="1.5s" begin="0" repeatCount="indefinite" keytimes="0;0.3;0.6;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" calcMode="spline" />
|
||||
</path>
|
||||
<path opacity="0.5" transform="translate(0 0)" d="M0 12 V20 H4 V12z">
|
||||
<animateTransform attributeName="transform" type="translate" values="0 0; 28 0; 0 0; 0 0" dur="1.5s" begin="0.1s" repeatCount="indefinite" keytimes="0;0.3;0.6;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" calcMode="spline" />
|
||||
</path>
|
||||
<path opacity="0.25" transform="translate(0 0)" d="M0 12 V20 H4 V12z">
|
||||
<animateTransform attributeName="transform" type="translate" values="0 0; 28 0; 0 0; 0 0" dur="1.5s" begin="0.2s" repeatCount="indefinite" keytimes="0;0.3;0.6;1" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" calcMode="spline" />
|
||||
</path>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.1 KiB |
6
public/imgs/loading-svg/loading-spin.svg
Normal file
@@ -0,0 +1,6 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32" width="32" height="32" fill="white">
|
||||
<path opacity=".25" d="M16 0 A16 16 0 0 0 16 32 A16 16 0 0 0 16 0 M16 4 A12 12 0 0 1 16 28 A12 12 0 0 1 16 4"/>
|
||||
<path d="M16 0 A16 16 0 0 1 32 16 L28 16 A12 12 0 0 0 16 4z">
|
||||
<animateTransform attributeName="transform" type="rotate" from="0 16 16" to="360 16 16" dur="0.8s" repeatCount="indefinite" />
|
||||
</path>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 423 B |
29
public/imgs/loading-svg/loading-spinning-bubbles.svg
Normal file
@@ -0,0 +1,29 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32" width="64" height="64" fill="#dd7479">
|
||||
<circle cx="16" cy="3" r="0">
|
||||
<animate attributeName="r" values="0;3;0;0" dur="1s" repeatCount="indefinite" begin="0" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" calcMode="spline" />
|
||||
</circle>
|
||||
<circle transform="rotate(45 16 16)" cx="16" cy="3" r="0">
|
||||
<animate attributeName="r" values="0;3;0;0" dur="1s" repeatCount="indefinite" begin="0.125s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" calcMode="spline" />
|
||||
</circle>
|
||||
<circle transform="rotate(90 16 16)" cx="16" cy="3" r="0">
|
||||
<animate attributeName="r" values="0;3;0;0" dur="1s" repeatCount="indefinite" begin="0.25s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" calcMode="spline" />
|
||||
</circle>
|
||||
<circle transform="rotate(135 16 16)" cx="16" cy="3" r="0">
|
||||
<animate attributeName="r" values="0;3;0;0" dur="1s" repeatCount="indefinite" begin="0.375s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" calcMode="spline" />
|
||||
</circle>
|
||||
<circle transform="rotate(180 16 16)" cx="16" cy="3" r="0">
|
||||
<animate attributeName="r" values="0;3;0;0" dur="1s" repeatCount="indefinite" begin="0.5s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" calcMode="spline" />
|
||||
</circle>
|
||||
<circle transform="rotate(225 16 16)" cx="16" cy="3" r="0">
|
||||
<animate attributeName="r" values="0;3;0;0" dur="1s" repeatCount="indefinite" begin="0.625s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" calcMode="spline" />
|
||||
</circle>
|
||||
<circle transform="rotate(270 16 16)" cx="16" cy="3" r="0">
|
||||
<animate attributeName="r" values="0;3;0;0" dur="1s" repeatCount="indefinite" begin="0.75s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" calcMode="spline" />
|
||||
</circle>
|
||||
<circle transform="rotate(315 16 16)" cx="16" cy="3" r="0">
|
||||
<animate attributeName="r" values="0;3;0;0" dur="1s" repeatCount="indefinite" begin="0.875s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" calcMode="spline" />
|
||||
</circle>
|
||||
<circle transform="rotate(180 16 16)" cx="16" cy="3" r="0">
|
||||
<animate attributeName="r" values="0;3;0;0" dur="1s" repeatCount="indefinite" begin="0.5s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" calcMode="spline" />
|
||||
</circle>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.3 KiB |
26
public/imgs/loading-svg/loading-spokes.svg
Normal file
@@ -0,0 +1,26 @@
|
||||
<svg id="loading" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32" width="32" height="32" fill="white">
|
||||
<path opacity=".1" d="M14 0 H18 V8 H14 z" transform="rotate(0 16 16)">
|
||||
<animate attributeName="opacity" from="1" to=".1" dur="1s" repeatCount="indefinite" begin="0"/>
|
||||
</path>
|
||||
<path opacity=".1" d="M14 0 H18 V8 H14 z" transform="rotate(45 16 16)">
|
||||
<animate attributeName="opacity" from="1" to=".1" dur="1s" repeatCount="indefinite" begin="0.125s"/>
|
||||
</path>
|
||||
<path opacity=".1" d="M14 0 H18 V8 H14 z" transform="rotate(90 16 16)">
|
||||
<animate attributeName="opacity" from="1" to=".1" dur="1s" repeatCount="indefinite" begin="0.25s"/>
|
||||
</path>
|
||||
<path opacity=".1" d="M14 0 H18 V8 H14 z" transform="rotate(135 16 16)">
|
||||
<animate attributeName="opacity" from="1" to=".1" dur="1s" repeatCount="indefinite" begin="0.375s"/>
|
||||
</path>
|
||||
<path opacity=".1" d="M14 0 H18 V8 H14 z" transform="rotate(180 16 16)">
|
||||
<animate attributeName="opacity" from="1" to=".1" dur="1s" repeatCount="indefinite" begin="0.5s"/>
|
||||
</path>
|
||||
<path opacity=".1" d="M14 0 H18 V8 H14 z" transform="rotate(225 16 16)">
|
||||
<animate attributeName="opacity" from="1" to=".1" dur="1s" repeatCount="indefinite" begin="0.675s"/>
|
||||
</path>
|
||||
<path opacity=".1" d="M14 0 H18 V8 H14 z" transform="rotate(270 16 16)">
|
||||
<animate attributeName="opacity" from="1" to=".1" dur="1s" repeatCount="indefinite" begin="0.75s"/>
|
||||
</path>
|
||||
<path opacity=".1" d="M14 0 H18 V8 H14 z" transform="rotate(315 16 16)">
|
||||
<animate attributeName="opacity" from="1" to=".1" dur="1s" repeatCount="indefinite" begin="0.875s"/>
|
||||
</path>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.6 KiB |
BIN
public/imgs/login-bg.jpg
Normal file
|
After Width: | Height: | Size: 124 KiB |
BIN
public/imgs/login-logo.png
Normal file
|
After Width: | Height: | Size: 5.9 KiB |
BIN
public/imgs/logo-footer.png
Normal file
|
After Width: | Height: | Size: 8.7 KiB |
BIN
public/imgs/logo-mi.png
Normal file
|
After Width: | Height: | Size: 5.0 KiB |
BIN
public/imgs/mi-home.png
Normal file
|
After Width: | Height: | Size: 388 B |
BIN
public/imgs/mi-logo.png
Normal file
|
After Width: | Height: | Size: 3.1 KiB |
BIN
public/imgs/mix-alpha.jpg
Normal file
|
After Width: | Height: | Size: 67 KiB |
BIN
public/imgs/nav-img/nav-1.png
Normal file
|
After Width: | Height: | Size: 12 KiB |
BIN
public/imgs/nav-img/nav-2.png
Normal file
|
After Width: | Height: | Size: 12 KiB |
BIN
public/imgs/nav-img/nav-3-1.jpg
Normal file
|
After Width: | Height: | Size: 34 KiB |
BIN
public/imgs/nav-img/nav-3-2.jpg
Normal file
|
After Width: | Height: | Size: 34 KiB |
BIN
public/imgs/nav-img/nav-3-3.png
Normal file
|
After Width: | Height: | Size: 24 KiB |
BIN
public/imgs/nav-img/nav-3-4.jpg
Normal file
|
After Width: | Height: | Size: 28 KiB |
BIN
public/imgs/nav-img/nav-3-5.jpg
Normal file
|
After Width: | Height: | Size: 11 KiB |
BIN
public/imgs/nav-img/nav-3-6.png
Normal file
|
After Width: | Height: | Size: 24 KiB |
BIN
public/imgs/nav-img/nav-3.png
Normal file
|
After Width: | Height: | Size: 12 KiB |
BIN
public/imgs/nav-img/nav-4.png
Normal file
|
After Width: | Height: | Size: 12 KiB |
BIN
public/imgs/nav-img/nav-5.png
Normal file
|
After Width: | Height: | Size: 20 KiB |
BIN
public/imgs/nav-img/nav-6.png
Normal file
|
After Width: | Height: | Size: 15 KiB |
BIN
public/imgs/pay/icon-ali.png
Normal file
|
After Width: | Height: | Size: 20 KiB |
BIN
public/imgs/pay/icon-qrcode.png
Normal file
|
After Width: | Height: | Size: 82 KiB |
BIN
public/imgs/pay/icon-scan.png
Normal file
|
After Width: | Height: | Size: 146 KiB |
BIN
public/imgs/pay/icon-wechat.png
Normal file
|
After Width: | Height: | Size: 12 KiB |
BIN
public/imgs/product/gallery-1.png
Normal file
|
After Width: | Height: | Size: 858 KiB |
BIN
public/imgs/product/gallery-2.png
Normal file
|
After Width: | Height: | Size: 287 KiB |
BIN
public/imgs/product/gallery-3.png
Normal file
|
After Width: | Height: | Size: 176 KiB |
BIN
public/imgs/product/gallery-4.png
Normal file
|
After Width: | Height: | Size: 394 KiB |
BIN
public/imgs/product/gallery-5.jpg
Normal file
|
After Width: | Height: | Size: 80 KiB |
BIN
public/imgs/product/gallery-6.jpg
Normal file
|
After Width: | Height: | Size: 93 KiB |
BIN
public/imgs/product/product-bg-1.png
Normal file
|
After Width: | Height: | Size: 142 KiB |
BIN
public/imgs/product/product-bg-2.png
Normal file
|
After Width: | Height: | Size: 52 KiB |
BIN
public/imgs/product/product-bg-3.png
Normal file
|
After Width: | Height: | Size: 522 KiB |
BIN
public/imgs/product/video.mp4
Normal file
BIN
public/imgs/right.png
Normal file
|
After Width: | Height: | Size: 8.0 KiB |
BIN
public/imgs/slider/slide-1.jpg
Normal file
|
After Width: | Height: | Size: 91 KiB |
BIN
public/imgs/slider/slide-2.jpg
Normal file
|
After Width: | Height: | Size: 113 KiB |
BIN
public/imgs/slider/slide-3.jpg
Normal file
|
After Width: | Height: | Size: 112 KiB |
BIN
public/imgs/slider/slide-4.jpg
Normal file
|
After Width: | Height: | Size: 137 KiB |
BIN
public/imgs/slider/slide-5.jpg
Normal file
|
After Width: | Height: | Size: 49 KiB |
BIN
public/imgs/so/5631fb7fnd9edc7a4.png
Normal file
|
After Width: | Height: | Size: 5.2 KiB |
BIN
public/imgs/so/57722598n82f09586.png
Normal file
|
After Width: | Height: | Size: 119 B |
BIN
public/imgs/so/59083e2cn80ef4868.png
Normal file
|
After Width: | Height: | Size: 1.3 KiB |
BIN
public/imgs/so/59083e32na9b06925.png
Normal file
|
After Width: | Height: | Size: 1.2 KiB |
BIN
public/imgs/so/590883a0n2dca3e0c.png
Normal file
|
After Width: | Height: | Size: 1.2 KiB |
BIN
public/imgs/so/backpanel20140728.png
Normal file
|
After Width: | Height: | Size: 1.4 KiB |
BIN
public/imgs/so/bg-attr.png
Normal file
|
After Width: | Height: | Size: 1.3 KiB |
BIN
public/imgs/so/bg-coupon.png
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
public/imgs/so/bg-guide.jpg
Normal file
|
After Width: | Height: | Size: 18 KiB |
BIN
public/imgs/so/bg-guide.png
Normal file
|
After Width: | Height: | Size: 2.0 KiB |
BIN
public/imgs/so/bg-guide2.png
Normal file
|
After Width: | Height: | Size: 1.6 KiB |
BIN
public/imgs/so/bg-im@1x.png
Normal file
|
After Width: | Height: | Size: 1.4 KiB |
BIN
public/imgs/so/bg-im@2x.png
Normal file
|
After Width: | Height: | Size: 2.3 KiB |