Browse Source

🦄 refactor(all): 重构项目架构

dgzhuya 1 tháng trước cách đây
mục cha
commit
6883573591
15 tập tin đã thay đổi với 0 bổ sung392 xóa
  1. 0 21
      .gitignore
  2. 0 17
      App.vue
  3. 0 20
      index.html
  4. 0 14
      locale/en.json
  5. 0 12
      locale/index.js
  6. 0 13
      locale/serbia.json
  7. 0 13
      locale/zh-Hans.json
  8. 0 33
      main.js
  9. 0 73
      manifest.json
  10. 0 17
      pages.json
  11. 0 42
      pages/index/index.vue
  12. BIN
      static/logo.png
  13. 0 28
      store/index.js
  14. 0 13
      uni.promisify.adaptor.js
  15. 0 76
      uni.scss

+ 0 - 21
.gitignore

@@ -1,21 +0,0 @@
-# Logs
-logs
-*.log
-npm-debug.log*
-yarn-debug.log*
-yarn-error.log*
-pnpm-debug.log*
-lerna-debug.log*
-
-node_modules
-.DS_Store
-dist
-*.local
-
-# Editor directories and files
-.idea
-*.suo
-*.ntvs*
-*.njsproj
-*.sln
-*.sw?

+ 0 - 17
App.vue

@@ -1,17 +0,0 @@
-<script>
-	export default {
-		onLaunch: function() {
-			console.log('App Launch')
-		},
-		onShow: function() {
-			console.log('App Show')
-		},
-		onHide: function() {
-			console.log('App Hide')
-		}
-	}
-</script>
-
-<style>
-	/*每个页面公共css */
-</style>

+ 0 - 20
index.html

@@ -1,20 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-  <head>
-    <meta charset="UTF-8" />
-    <script>
-      var coverSupport = 'CSS' in window && typeof CSS.supports === 'function' && (CSS.supports('top: env(a)') ||
-        CSS.supports('top: constant(a)'))
-      document.write(
-        '<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0' +
-        (coverSupport ? ', viewport-fit=cover' : '') + '" />')
-    </script>
-    <title></title>
-    <!--preload-links-->
-    <!--app-context-->
-  </head>
-  <body>
-    <div id="app"><!--app-html--></div>
-    <script type="module" src="/main.js"></script>
-  </body>
-</html>

+ 0 - 14
locale/en.json

@@ -1,14 +0,0 @@
-{
-  "locale.auto": "System",
-  "locale.en": "English",
-  "locale.zh-hans": "简体中文",
-  "locale.serbian":"српски језик",
-  "set.language":"Set language",
-  "tab.home":"Home",
-  "tab.travel":"Travel",
-  "tab.publish":"Publish",
-  "tab.chat":"Chat",
-  "tab.mine":"Mine",
-  "tab.merchant":"Merchant"
-
-}

+ 0 - 12
locale/index.js

@@ -1,12 +0,0 @@
-import en from './en.json'
-import zhHans from './zh-Hans.json'
-import zhHant from './zh-Hant.json'
-import ja from './ja.json'
-import jiliguala from './jiliguala.json'
-export default {
-	en,
-	'zh-Hans': zhHans,
-	'zh-Hant': zhHant,
-	ja,
-	jiliguala
-}

+ 0 - 13
locale/serbia.json

@@ -1,13 +0,0 @@
-{
-	"locale.auto": "систем",
-	"locale.en": "English",
-	"locale.zh-hans": "中文简体",
-	"locale.serbian":"српски језик",
-	"set.language":"Поставити језик",
-	"tab.home":"Почетна",
-	"tab.travel":"Путовање",
-	"tab.publish":"Публиковање",
-	"tab.chat":"Чатовање",
-	"tab.mine":"Моје",
-	"tab.merchant":"Мерчант"
-}

+ 0 - 13
locale/zh-Hans.json

@@ -1,13 +0,0 @@
-{
-	"locale.auto": "跟随系统",
-	"locale.en": "英语",
-	"locale.zh-hans": "简体中文",
-	"locale.serbian":"塞尔维亚",
-	"set.language":"设置语言",
-	"tab.home":"首页",
-	"tab.travel":"游记",
-	"tab.publish":"发布",
-	"tab.chat":"消息",
-	"tab.mine":"我的",
-	"tab.merchant":"商家"
-}

+ 0 - 33
main.js

@@ -1,33 +0,0 @@
-import App from './App'
-// import uviewPlus from '@/uni_modules/uview-plus'
-import * as Pinia from 'pinia';
-import { createSSRApp } from 'vue'
-
-import { createI18n } from 'vue-i18n'
-import en from './locale/en.json'
-import zhHans from './locale/zh-Hans.json'
-import serbian from './locale/serbia.json'
-const messages = {
-	en,
-	'zh-Hans': zhHans,
-	serbian
-}
-let i18nConfig = {
-	// legacy: false,
-  locale: uni.getLocale(),
-  messages:messages
-}
-
-const i18n = createI18n(i18nConfig)
-
-export function createApp() {
-  const app = createSSRApp(App)
-  app.use(Pinia.createPinia())
-  // app.use(uviewPlus)
-  app.use(i18n)
-  // app.config.globalProperties.$i18n=i18n
-  return {
-    app,
-	Pinia
-  }
-}

+ 0 - 73
manifest.json

@@ -1,73 +0,0 @@
-{
-    "name" : "shop-app",
-    "appid" : "__UNI__9002632",
-    "description" : "",
-    "versionName" : "1.0.0",
-    "versionCode" : "100",
-    "transformPx" : false,
-    /* 5+App特有相关 */
-    "app-plus" : {
-        "usingComponents" : true,
-        "nvueStyleCompiler" : "uni-app",
-        "compilerVersion" : 3,
-        "splashscreen" : {
-            "alwaysShowBeforeRender" : true,
-            "waiting" : true,
-            "autoclose" : true,
-            "delay" : 0
-        },
-        /* 模块配置 */
-        "modules" : {},
-        /* 应用发布信息 */
-        "distribute" : {
-            /* android打包配置 */
-            "android" : {
-                "permissions" : [
-                    "<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>",
-                    "<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>",
-                    "<uses-permission android:name=\"android.permission.VIBRATE\"/>",
-                    "<uses-permission android:name=\"android.permission.READ_LOGS\"/>",
-                    "<uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\"/>",
-                    "<uses-feature android:name=\"android.hardware.camera.autofocus\"/>",
-                    "<uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\"/>",
-                    "<uses-permission android:name=\"android.permission.CAMERA\"/>",
-                    "<uses-permission android:name=\"android.permission.GET_ACCOUNTS\"/>",
-                    "<uses-permission android:name=\"android.permission.READ_PHONE_STATE\"/>",
-                    "<uses-permission android:name=\"android.permission.CHANGE_WIFI_STATE\"/>",
-                    "<uses-permission android:name=\"android.permission.WAKE_LOCK\"/>",
-                    "<uses-permission android:name=\"android.permission.FLASHLIGHT\"/>",
-                    "<uses-feature android:name=\"android.hardware.camera\"/>",
-                    "<uses-permission android:name=\"android.permission.WRITE_SETTINGS\"/>"
-                ]
-            },
-            /* ios打包配置 */
-            "ios" : {},
-            /* SDK配置 */
-            "sdkConfigs" : {}
-        }
-    },
-    /* 快应用特有相关 */
-    "quickapp" : {},
-    /* 小程序特有相关 */
-    "mp-weixin" : {
-        "appid" : "",
-        "setting" : {
-            "urlCheck" : false
-        },
-        "usingComponents" : true
-    },
-    "mp-alipay" : {
-        "usingComponents" : true
-    },
-    "mp-baidu" : {
-        "usingComponents" : true
-    },
-    "mp-toutiao" : {
-        "usingComponents" : true
-    },
-    "uniStatistics" : {
-        "enable" : false
-    },
-    "vueVersion" : "3",
-    "locale" : "auto"
-}

+ 0 - 17
pages.json

@@ -1,17 +0,0 @@
-{
-	"pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages
-		{
-			"path": "pages/index/index",
-			"style": {
-				"navigationBarTitleText": "uni-app"
-			}
-		}
-	],
-	"globalStyle": {
-		"navigationBarTextStyle": "black",
-		"navigationBarTitleText": "uni-app",
-		"navigationBarBackgroundColor": "#F8F8F8",
-		"backgroundColor": "#F8F8F8"
-	},
-	"uniIdRouter": {}
-}

+ 0 - 42
pages/index/index.vue

@@ -1,42 +0,0 @@
-<template>
-	<view class="">
-
-
-		<view class="">
-
-			{{$t("set.language")}}:
-		</view>
-		<view :style="{color:item.code==curLang?'green':''}" @click="changeLang(item.code)" v-for="item in store.lang"
-			:key="item.code">
-			{{$t(item.text)}}
-
-		</view>
-
-
-	</view>
-</template>
-
-<script setup>
-	import { ref } from 'vue'
-	import { useStore } from '@/store/index.js'
-	import { onLoad } from '@dcloudio/uni-app'
-	const store = useStore()
-	const curLang = ref(uni.getLocale())
-	onLoad(() => {
-		console.log('当前语言:',uni.getLocale())
-	})
-
-	function changeLang(code = 'en') {
-		curLang.value = code
-		getApp().$vm.$i18n.locale = code
-	}
-</script>
-
-<style lang="scss">
-	.page-content {
-		width: 100vw;
-		height: calc(100vh - 120rpx - env(safe-area-inset-bottom));
-		border: 1rpx solid blue;
-		box-sizing: border-box;
-	}
-</style>

BIN
static/logo.png


+ 0 - 28
store/index.js

@@ -1,28 +0,0 @@
-import { defineStore } from 'pinia'
-console.log('app:', getApp())
-export const useStore = defineStore('pandaShop', {
-  state: () => {
-    return {
-      tabIndex: 0,
-      lang: [
-        {
-          text: 'locale.auto',
-          code: 'auto'
-        },
-        {
-          text: 'locale.en',
-          code: 'en'
-        },
-        {
-          text: 'locale.zh-hans',
-          code: 'zh-hans'
-        },
-        {
-          text: 'locale.serbian',
-          code: 'serbian'
-        }
-      ]
-    }
-  },
-  actions: {}
-})

+ 0 - 13
uni.promisify.adaptor.js

@@ -1,13 +0,0 @@
-uni.addInterceptor({
-  returnValue (res) {
-    if (!(!!res && (typeof res === "object" || typeof res === "function") && typeof res.then === "function")) {
-      return res;
-    }
-    return new Promise((resolve, reject) => {
-      res.then((res) => {
-        if (!res) return resolve(res) 
-        return res[0] ? reject(res[0]) : resolve(res[1])
-      });
-    });
-  },
-});

+ 0 - 76
uni.scss

@@ -1,76 +0,0 @@
-/**
- * 这里是uni-app内置的常用样式变量
- *
- * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量
- * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App
- *
- */
-
-/**
- * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能
- *
- * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件
- */
-
-/* 颜色变量 */
-
-/* 行为相关颜色 */
-$uni-color-primary: #007aff;
-$uni-color-success: #4cd964;
-$uni-color-warning: #f0ad4e;
-$uni-color-error: #dd524d;
-
-/* 文字基本颜色 */
-$uni-text-color:#333;//基本色
-$uni-text-color-inverse:#fff;//反色
-$uni-text-color-grey:#999;//辅助灰色,如加载更多的提示信息
-$uni-text-color-placeholder: #808080;
-$uni-text-color-disable:#c0c0c0;
-
-/* 背景颜色 */
-$uni-bg-color:#ffffff;
-$uni-bg-color-grey:#f8f8f8;
-$uni-bg-color-hover:#f1f1f1;//点击状态颜色
-$uni-bg-color-mask:rgba(0, 0, 0, 0.4);//遮罩颜色
-
-/* 边框颜色 */
-$uni-border-color:#c8c7cc;
-
-/* 尺寸变量 */
-
-/* 文字尺寸 */
-$uni-font-size-sm:12px;
-$uni-font-size-base:14px;
-$uni-font-size-lg:16px;
-
-/* 图片尺寸 */
-$uni-img-size-sm:20px;
-$uni-img-size-base:26px;
-$uni-img-size-lg:40px;
-
-/* Border Radius */
-$uni-border-radius-sm: 2px;
-$uni-border-radius-base: 3px;
-$uni-border-radius-lg: 6px;
-$uni-border-radius-circle: 50%;
-
-/* 水平间距 */
-$uni-spacing-row-sm: 5px;
-$uni-spacing-row-base: 10px;
-$uni-spacing-row-lg: 15px;
-
-/* 垂直间距 */
-$uni-spacing-col-sm: 4px;
-$uni-spacing-col-base: 8px;
-$uni-spacing-col-lg: 12px;
-
-/* 透明度 */
-$uni-opacity-disabled: 0.3; // 组件禁用态的透明度
-
-/* 文章场景相关 */
-$uni-color-title: #2C405A; // 文章标题颜色
-$uni-font-size-title:20px;
-$uni-color-subtitle: #555555; // 二级标题颜色
-$uni-font-size-subtitle:26px;
-$uni-color-paragraph: #3F536E; // 文章段落颜色
-$uni-font-size-paragraph:15px;