diff --git a/App.vue b/App.vue
index 061c99f..7cf8351 100644
--- a/App.vue
+++ b/App.vue
@@ -4,6 +4,8 @@
import {
Weixin
} from 'common/js/wx-jssdk.js';
+ // 新增:引入多语言核心工具类
+ import langConfig from '@/common/js/lang.js';
export default {
mixins: [auth],
@@ -15,6 +17,9 @@
}
uni.hideTabBar();
+ // 新增:应用启动时初始化多语言(核心修改)
+ this.initLang();
+
// #ifdef MP
const updateManager = uni.getUpdateManager();
updateManager.onCheckForUpdate(function(res) {
@@ -23,8 +28,8 @@
updateManager.onUpdateReady(function(res) {
uni.showModal({
- title: '更新提示',
- content: '新版本已经准备好,是否重启应用?',
+ title: langConfig.lang('common.updateTip'), // 新增:多语言标题
+ content: langConfig.lang('common.updateContent'), // 新增:多语言内容
success(res) {
if (res.confirm) {
// 新的版本已经下载好,调用 applyUpdate 应用新版本并重启
@@ -48,8 +53,8 @@
uni.onNetworkStatusChange(function(res) {
if (!res.isConnected) {
uni.showModal({
- title: '网络失去链接',
- content: '请检查网络链接',
+ title: langConfig.lang('common.networkTip'), // 新增:多语言标题
+ content: langConfig.lang('common.networkContent'), // 新增:多语言内容
showCancel: false
});
}
@@ -144,6 +149,9 @@
// #endif
},
onShow: function(options) {
+ // 新增:应用前台显示时刷新多语言(确保切后台后语言仍生效)
+ langConfig.refresh();
+
// #ifdef MP
// 自动授权登录
this.getAuthInfo();
@@ -165,6 +173,19 @@
},
onHide: function() {},
methods: {
+ // 新增:多语言初始化方法
+ initLang() {
+ // 1. 读取本地存储的语言,无则默认中文
+ const currentLang = uni.getStorageSync('lang') || 'zh-cn';
+ // 2. 初始化lang.js的locale变量(确保全局语言一致)
+ langConfig.locale = currentLang;
+ // 3. 刷新多语言配置(标题、tabBar等)
+ langConfig.refresh();
+ // 4. 挂载全局多语言方法(方便所有页面直接调用)
+ uni.$lang = langConfig.lang;
+ // 5. 挂载全局语言切换方法(可选,方便全局调用)
+ uni.$switchLang = langConfig.change;
+ },
/**
* 获取授权信息
*/
diff --git a/common/js/lang.js b/common/js/lang.js
index 9a4eff7..d071211 100644
--- a/common/js/lang.js
+++ b/common/js/lang.js
@@ -1,129 +1,136 @@
const langList = ['zh-cn', 'en-us'];
-var locale = uni.getStorageSync('lang') || "zh-cn"; //设置语言
+var locale = uni.getStorageSync('lang') || "zh-cn"; // 设置默认语言
export default {
langList: ['zh-cn', 'en-us'],
/**
- * * 解析多语言
- * @param {Object} field
+ * 解析多语言
+ * @param {String} field 语言包字段(如 'common.title')
+ * @returns {String} 对应语言的文字
*/
lang(field) {
let _this = getCurrentPages()[getCurrentPages().length - 1];
- if (!_this) return;
+ if (!_this) return field; // 无页面时返回原字段,避免undefined
- var value = '';
+ var value = field; // 默认返回原字段,防止空白
let newRoute;
try {
- //公共语言包
- var lang = require('../../lang/' + locale + '/common.js').lang;
-
- //当前页面语言包
+ // 1. 加载公共语言包(核心,兜底)
+ var commonLang = require('../../lang/' + locale + '/common.js').lang;
+ // 2. 加载当前页面语言包(可选,失败不影响)
let route = _this.route.split("/");
newRoute = route.slice(1, route.length);
- let currentPageLang = require('../../lang/' + locale + '/' + newRoute.join("/") + '.js').lang;
-
- for (let f in currentPageLang) {
- lang[f] = currentPageLang[f];
+ let currentPageLang = {};
+ // 容错:页面语言包不存在时不报错
+ try {
+ currentPageLang = require('../../lang/' + locale + '/' + newRoute.join("/") + '.js').lang;
+ } catch (e) {
+ console.warn(`当前页面(${newRoute.join("/")})无${locale}语言包`);
}
+ // 合并:页面语言包覆盖公共语言包
+ var lang = { ...commonLang, ...currentPageLang };
+ // 解析字段(支持多级,如 'common.langSwitchBtn')
var arr = field.split(".");
if (arr.length > 1) {
- for (let i in arr) {
- var next = parseInt(i) + 1;
- if (next < arr.length) {
- value = lang[arr[i]][arr[next]];
- }
+ value = lang; // 初始化为完整语言包
+ for (let i = 0; i < arr.length; i++) {
+ if (!value[arr[i]]) break; // 字段不存在时终止,避免报错
+ value = value[arr[i]];
}
-
} else {
- value = lang[field];
+ value = lang[field] || field; // 字段不存在返回原字段
}
} catch (e) {
- if (field.indexOf("common.") != -1 || field.indexOf("tabBar.") != -1) {
- value = lang[field];
- } else {
- value = field;
- }
-
+ console.error("语言包解析失败:", e);
+ value = field; // 兜底:返回原字段,避免空白
}
+ // 替换参数(如 'hello {0}' → 'hello 世界')
if (arguments.length > 1) {
- //有参数,需要替换
for (var i = 1; i < arguments.length; i++) {
- value = value.replace("{" + (i - 1) + "}", arguments[i]);
+ value = value.replace("{" + (i - 1) + "}", arguments[i] || "");
}
}
- if (value == undefined || (value == 'title' && field == 'title')) value = ''; // field
- return value;
+ // 最终兜底:避免返回undefined/空字符串
+ return value || field;
},
- //切换语言
+ // 切换语言(核心修复:防白屏+全局事件)
change(value) {
- let _this = getCurrentPages()[getCurrentPages().length - 1];
- if (!_this) return;
-
+ // 1. 校验语言值合法性
+ if (!langList.includes(value)) {
+ console.error("语言值不合法:", value);
+ return;
+ }
+ // 2. 保存语言到本地存储
uni.setStorageSync("lang", value);
- locale = uni.getStorageSync('lang') || "zh-cn"; //设置语言
-
+ locale = value; // 更新全局locale,立即生效
+ // 3. 刷新标题/tabBar(保留原有逻辑)
this.refresh();
-
- uni.reLaunch({
- url: '/pages/member/index'
- });
+ // 4. 触发全局语言切换事件(通知所有页面/组件更新)
+ uni.$emit('lang-changed', value);
+ // 5. 修复白屏:延迟重启当前页面(而非固定会员页)
+ setTimeout(() => {
+ let currentPage = getCurrentPages()[getCurrentPages().length - 1];
+ if (currentPage) {
+ uni.reLaunch({
+ url: '/' + currentPage.route // 重启当前页面,而非固定会员页
+ });
+ } else {
+ uni.reLaunch({ url: '/pages/index/index' }); // 兜底:重启首页
+ }
+ }, 300); // 300ms延迟:确保语言配置加载完成,避免白屏
},
- //刷新标题、tabbar
+ // 刷新标题、tabbar(优化:容错+强制生效)
refresh() {
let _this = getCurrentPages()[getCurrentPages().length - 1];
if (!_this) return;
- locale = uni.getStorageSync('lang') || "zh-cn"; //设置语言
-
- this.title(this.lang("title"));
+ locale = uni.getStorageSync('lang') || "zh-cn"; // 重新读取,确保最新
- //设置tabbar的文字语言
- // uni.setTabBarItem({
- // index: 0,
- // text: this.lang("tabBar.home")
- // });
- // uni.setTabBarItem({
- // index: 1,
- // text: this.lang("tabBar.category")
- // });
- // uni.setTabBarItem({
- // index: 2,
- // text: this.lang("tabBar.cart")
- // });
- // uni.setTabBarItem({
- // index: 3,
- // text: this.lang("tabBar.member")
- // });
+ // 刷新导航栏标题(容错:标题字段不存在时不报错)
+ let titleText = this.lang("title") || "";
+ this.title(titleText);
+
+ // 修复:启用tabBar文字更新(原代码被注释,导致tabBar语言不切换)
+ try {
+ uni.setTabBarItem({ index: 0, text: this.lang("tabBar.home") || "首页" });
+ uni.setTabBarItem({ index: 1, text: this.lang("tabBar.category") || "分类" });
+ uni.setTabBarItem({ index: 2, text: this.lang("tabBar.cart") || "购物车" });
+ uni.setTabBarItem({ index: 3, text: this.lang("tabBar.member") || "我的" });
+ } catch (e) {
+ console.warn("tabBar文字更新失败:", e);
+ }
},
+ // 设置导航栏标题(优化:容错)
title(str) {
- if (str) {
+ if (str && typeof str === 'string') {
uni.setNavigationBarTitle({
title: str,
- success: function (res) {
- },
fail: function (err) {
+ console.warn("导航栏标题设置失败:", err);
}
});
}
},
- // 获取语言包列表
+ // 获取语言包列表(优化:容错)
list() {
var list = [];
try {
- //公共语言包
for (var i = 0; i < langList.length; i++) {
- let item = require('../../lang/' + langList[i] + '/common.js').lang;
+ let langPath = '../../lang/' + langList[i] + '/common.js';
+ let item = require(langPath).lang;
list.push({
- name: item.common.name,
+ name: item.common.name || langList[i], // 兜底:显示语言值
value: langList[i]
});
}
} catch (e) {
- // "没有找到语言包:", '../../lang/' + locale + '/common.js'
+ console.error("获取语言包列表失败:", e);
+ // 兜底:返回基础列表
+ list = langList.map(item => ({ name: item, value: item }));
}
return list;
}
-}
+}
\ No newline at end of file
diff --git a/components/hover-nav/hover-nav.vue b/components/hover-nav/hover-nav.vue
index c4f38c3..203e6f6 100644
--- a/components/hover-nav/hover-nav.vue
+++ b/components/hover-nav/hover-nav.vue
@@ -1,26 +1,20 @@
-
+
+
-
-
-
+
+ {{ currentLang === 'zh-cn' ? 'EN' : '中文' }}
-
- 快捷
- 导航
- -->
@@ -39,7 +33,9 @@
fixBtnShow: true,
tel:'',
kefuimg:'',
- phoneimg:''
+ phoneimg:'',
+ // 新增:当前语言(默认中文)
+ currentLang: uni.getStorageSync('lang') || 'zh-cn'
};
},
created() {
@@ -53,7 +49,10 @@
that.tel = e.data.mobile
}
})
-
+ // 新增:监听全局语言切换事件,实时更新按钮文字
+ uni.$on('lang-changed', (lang) => {
+ this.currentLang = lang;
+ })
},
methods: {
//拨打电话
@@ -61,7 +60,26 @@
uni.makePhoneCall({
phoneNumber:this.tel+''
})
+ },
+ // 新增:语言切换核心方法
+ switchLang() {
+ // 1. 切换目标语言(中文↔英文)
+ const targetLang = this.currentLang === 'zh-cn' ? 'en-us' : 'zh-cn';
+ // 2. 保存到本地存储(全局生效)
+ uni.setStorageSync('lang', targetLang);
+ // 3. 触发全局语言事件(通知其他页面更新)
+ uni.$emit('lang-changed', targetLang);
+ // 4. 延迟重启当前页面(避免白屏,保证语言生效)
+ setTimeout(() => {
+ const pages = getCurrentPages();
+ const currentPage = pages[pages.length - 1];
+ uni.reLaunch({ url: '/' + currentPage.route });
+ }, 300);
}
+ },
+ // 新增:页面销毁时移除监听,避免内存泄漏
+ beforeDestroy() {
+ uni.$off('lang-changed');
}
};
@@ -92,8 +110,6 @@
right: 0rpx;
bottom: 200rpx;
z-index: 10;
- // background: #fff;
- // box-shadow: 2rpx 2rpx 22rpx rgba(0, 0, 0, 0.3);
border-radius: 120rpx;
padding: 20rpx 0;
display: flex;
@@ -107,6 +123,7 @@
.btn-item {
display: flex;
justify-content: center;
+ align-items: center; // 新增:垂直居中,和其他按钮对齐
text-align: center;
flex-direction: column;
line-height: 1;
@@ -121,6 +138,12 @@
font-size: 36rpx;
font-weight: bold;
}
+ // 新增:语言按钮文字样式
+ .lang-text {
+ font-size: 24rpx; // 适配圆形按钮大小
+ font-weight: 600;
+ color: #333; // 和其他按钮图标颜色统一
+ }
view {
font-size: 26rpx;
diff --git a/lang/en-us/common.js b/lang/en-us/common.js
index 9e49894..6d8196d 100644
--- a/lang/en-us/common.js
+++ b/lang/en-us/common.js
@@ -1,22 +1,37 @@
export const lang = {
-
- // 底部选项卡
+ // 底部选项卡(英文)
tabBar: {
- home: 'index',
- category: 'category',
- cart: 'cart',
- member: 'member',
+ home: 'Home',
+ category: 'Category',
+ cart: 'Cart',
+ member: 'Member Center'
},
- //公共
+ // 公共文字
common: {
- //语言包名称
- name: '英文',
- mescrollTextInOffset: 'pull to refresh',
- mescrollTextOutOffset: 'Loading...',
+ name: 'English',
+ mescrollTextInOffset: 'Pull down to refresh',
+ mescrollTextOutOffset: 'Release to update',
mescrollEmpty: "No data available",
- goodsRecommendTitle: 'Guess you like',
+ goodsRecommendTitle: 'You May Also Like',
currencySymbol: '¥',
- langSwitchBtn: 'EN' // 新增:语言切换按钮文字(英文)
+ submit: 'Submit',
+ langSwitchBtn: '中文',
+ // App.vue弹窗翻译
+ updateTip: 'Update Tip',
+ updateContent: 'The new version is ready, do you want to restart the app?',
+ networkTip: 'Network Disconnected',
+ networkContent: 'Please check your network connection', // 关键:这里加逗号!
+ // 首页多语言字段
+ siteName: 'Site Name',
+ welcomeMsg: 'Welcome to follow',
+ followOfficialAccount: 'Follow Official Account',
+ followMoreInfo: 'Follow for more information',
+ iKnow: 'I know',
+ confirmStore: 'Please confirm the store',
+ reposition: 'Reposition',
+ currentStore: 'Current Store',
+ confirmEnter: 'Confirm to enter',
+ chooseOtherStore: 'Choose other stores'
}
-}
+}
\ No newline at end of file
diff --git a/lang/zh-cn/common.js b/lang/zh-cn/common.js
index e50ad33..ad2d387 100644
--- a/lang/zh-cn/common.js
+++ b/lang/zh-cn/common.js
@@ -1,6 +1,5 @@
export const lang = {
-
- // 底部选项卡
+ // 底部选项卡(中文)
tabBar: {
home: '首页',
category: '分类',
@@ -8,9 +7,8 @@ export const lang = {
member: '个人中心'
},
- //公共
+ // 公共文字
common: {
- //语言包名称
name: '中文',
mescrollTextInOffset: '下拉刷新',
mescrollTextOutOffset: '释放更新',
@@ -18,6 +16,22 @@ export const lang = {
goodsRecommendTitle: '猜你喜欢',
currencySymbol: '¥',
submit: '提交',
- langSwitchBtn: '中文' // 新增:语言切换按钮文字(中文),最后一个属性不加逗号
+ langSwitchBtn: 'EN',
+ // App.vue弹窗翻译
+ updateTip: '更新提示',
+ updateContent: '新版本已经准备好,是否重启应用?',
+ networkTip: '网络失去连接',
+ networkContent: '请检查网络连接', // 关键:这里加逗号!
+ // 首页多语言字段
+ siteName: '站点名称',
+ welcomeMsg: '欢迎关注',
+ followOfficialAccount: '关注公众号',
+ followMoreInfo: '关注了解更多',
+ iKnow: '我知道了',
+ confirmStore: '请确认门店',
+ reposition: '重新定位',
+ currentStore: '当前门店',
+ confirmEnter: '确认进入',
+ chooseOtherStore: '选择其他门店'
}
-}
+}
\ No newline at end of file
diff --git a/node_modules/jweixin-module/README.md b/node_modules/jweixin-module/README.md
index f4e08bd..7c91d7b 100644
--- a/node_modules/jweixin-module/README.md
+++ b/node_modules/jweixin-module/README.md
@@ -19,8 +19,8 @@ https://unpkg.com/jweixin-module/out/index.js
## 使用
```js
-var wx = require('jweixin-module')
-wx.ready(function(){
+var jweixin = require('jweixin-module')
+jweixin.ready(function(){
// TODO
});
```
diff --git a/pages/contact/contact.vue b/pages/contact/contact.vue
index 87e2e54..ee85b30 100644
--- a/pages/contact/contact.vue
+++ b/pages/contact/contact.vue
@@ -132,10 +132,6 @@
-
-
- {{ $lang('common.langSwitchBtn') }}
-
diff --git a/pages/goods/category.vue b/pages/goods/category.vue
index 702267e..9c5d8e4 100644
--- a/pages/goods/category.vue
+++ b/pages/goods/category.vue
@@ -30,7 +30,9 @@
components: {},
data() {
return {
- diyData: null
+ diyData: null,
+ // 新增:标记是否已监听语言事件,避免重复监听
+ langListenerAdded: false
};
},
onLoad() {
@@ -38,20 +40,51 @@
this.$langConfig.refresh();
uni.hideTabBar();
this.getDiyInfo();
+ // 新增:监听全局语言切换事件
+ this.addLangListener();
},
onShow() {
if (this.$refs.category) this.$refs.category[0].pageShow();
},
onUnload() {
if (!this.storeToken && this.$refs.login) this.$refs.login.cancelCompleteInfo();
+ // 新增:页面销毁时移除语言监听,避免内存泄漏
+ this.removeLangListener();
},
methods: {
+ // 新增:添加语言切换监听(封装为方法,避免重复监听)
+ addLangListener() {
+ if (!this.langListenerAdded) {
+ uni.$on('lang-changed', this.handleLangChange);
+ this.langListenerAdded = true;
+ }
+ },
+ // 新增:移除语言切换监听
+ removeLangListener() {
+ if (this.langListenerAdded) {
+ uni.$off('lang-changed', this.handleLangChange);
+ this.langListenerAdded = false;
+ }
+ },
+ // 新增:语言切换后的处理逻辑
+ handleLangChange() {
+ // 1. 刷新多语言配置(确保语言包生效)
+ this.$langConfig.refresh();
+ // 2. 显示加载遮罩,提升用户体验
+ if (this.$refs.loadingCover) this.$refs.loadingCover.show();
+ // 3. 重新请求分类数据(核心:获取对应语言的分类内容)
+ this.getDiyInfo();
+ },
getDiyInfo() {
this.$api.sendRequest({
url: '/api/diyview/info',
data: {
name: 'DIY_VIEW_GOODS_CATEGORY'
},
+ // 新增:请求头携带当前语言,让后端返回对应语言的分类数据
+ header: {
+ 'lang': uni.getStorageSync('lang') || 'zh-cn'
+ },
success: res => {
if (res.code == 0 && res.data) {
this.diyData = res.data;
@@ -61,6 +94,11 @@
}
uni.stopPullDownRefresh();
}
+ },
+ // 新增:请求失败时隐藏加载遮罩,避免遮罩卡死
+ fail: () => {
+ if (this.$refs.loadingCover) this.$refs.loadingCover.hide();
+ uni.stopPullDownRefresh();
}
});
},
@@ -71,6 +109,14 @@
onPullDownRefresh() {
uni.hideTabBar();
this.getDiyInfo();
+ },
+ // 新增:页面隐藏时移除监听(可选,增强容错)
+ onHide() {
+ this.removeLangListener();
+ },
+ // 新增:页面重新显示时重新添加监听
+ onReShow() {
+ this.addLangListener();
}
};
diff --git a/pages/index/index.vue b/pages/index/index.vue
index f5e15dc..79c3392 100644
--- a/pages/index/index.vue
+++ b/pages/index/index.vue
@@ -7,17 +7,16 @@
- {{ siteInfo.site_name }}
- {{ followOfficialAccount.welcomeMsg }}
+
+ {{ $lang('common.siteName') || siteInfo.site_name }}
+
+ {{ $lang('common.welcomeMsg') || followOfficialAccount.welcomeMsg }}
- 关注公众号
+
+ {{ $lang('common.followOfficialAccount') }}
-
-
@@ -36,33 +35,15 @@
-
-
-
@@ -77,7 +58,8 @@
- 关注了解更多
+
+ {{ $lang('common.followMoreInfo') }}
@@ -87,25 +69,29 @@
-
+
+
-
-
-
- {{ $lang('common.langSwitchBtn') }}
-
+
@@ -143,7 +128,7 @@
import indexJs from './public/js/index.js';
import toTop from '@/components/toTop/toTop.vue';
import scroll from '@/common/js/scroll-view.js';
- // 👇 引入语言工具文件
+ // 👇 保留引入,但无需重复定义切换方法(hover-nav已处理)
import langUtil from '@/common/js/lang.js';
export default {
@@ -153,13 +138,45 @@
toTop
},
mixins: [diyJs, scroll, indexJs],
+ data() {
+ return {
+ // 新增:标记是否已监听语言事件
+ langListenerAdded: false
+ };
+ },
+ onLoad() {
+ // 新增:监听语言切换事件,刷新首页DIY数据
+ this.addLangListener();
+ },
+ onUnload() {
+ // 新增:页面销毁时移除监听
+ this.removeLangListener();
+ },
methods: {
- // 👇 新增:语言切换方法
- toggleLang() {
- const currentLang = this.$lang?.locale || 'zh-cn';
- const targetLang = currentLang === 'zh-cn' ? 'en-us' : 'zh-cn';
- langUtil.change(targetLang);
- }
+ // 新增:添加语言监听
+ addLangListener() {
+ if (!this.langListenerAdded) {
+ uni.$on('lang-changed', this.handleLangChange);
+ this.langListenerAdded = true;
+ }
+ },
+ // 新增:移除语言监听
+ removeLangListener() {
+ if (this.langListenerAdded) {
+ uni.$off('lang-changed', this.handleLangChange);
+ this.langListenerAdded = false;
+ }
+ },
+ // 新增:语言切换后刷新首页数据
+ handleLangChange() {
+ // 重新请求首页DIY数据,确保内容同步为新语言
+ if (this.getDiyInfo) {
+ this.getDiyInfo(); // 调用首页获取DIY数据的方法
+ }
+ // 刷新多语言配置
+ this.$langConfig?.refresh();
+ },
+ // 👇 删除:重复的toggleLang方法(hover-nav里已有)
}
};
@@ -168,8 +185,6 @@
@import '@/common/css/diy.scss';
@import './public/css/index.scss';
-
-
.small-bot {
width: 100%;
height: 100%;
@@ -208,7 +223,6 @@
.small-bot-close i {
font-size: 60rpx;
}
-
\ No newline at end of file
diff --git a/pages/member/index.vue b/pages/member/index.vue
index ac78d78..f59af74 100644
--- a/pages/member/index.vue
+++ b/pages/member/index.vue
@@ -4,10 +4,6 @@
-
-
- {{ $lang('common.langSwitchBtn') }}
-
diff --git a/project.config.json b/project.config.json
index 14f0be7..f9b0261 100644
--- a/project.config.json
+++ b/project.config.json
@@ -1,75 +1,78 @@
-{
- "description": "项目配置文件",
- "packOptions": {
- "ignore": []
- },
- "setting": {
- "urlCheck": true,
- "es6": true,
- "enhance": false,
- "postcss": true,
- "preloadBackgroundData": false,
- "minified": true,
- "newFeature": false,
- "coverView": true,
- "nodeModules": false,
- "autoAudits": false,
- "showShadowRootInWxmlPanel": true,
- "scopeDataCheck": false,
- "uglifyFileName": false,
- "checkInvalidKey": true,
- "checkSiteMap": true,
- "uploadWithSourceMap": true,
- "compileHotReLoad": false,
- "useMultiFrameRuntime": true,
- "useApiHook": true,
- "useApiHostProcess": true,
- "babelSetting": {
- "ignore": [],
- "disablePlugins": [],
- "outputPath": ""
- },
- "enableEngineNative": false,
- "bundle": false,
- "useIsolateContext": true,
- "useCompilerModule": true,
- "userConfirmedUseCompilerModuleSwitch": false,
- "userConfirmedBundleSwitch": false,
- "packNpmManually": false,
- "packNpmRelationList": [],
- "minifyWXSS": true
- },
- "compileType": "miniprogram",
- "libVersion": "2.16.1",
- "appid": "wx29215aa1bd97bbd6",
- "projectname": "niushop_b2c_v4_uniapp",
- "debugOptions": {
- "hidedInDevtools": []
- },
- "scripts": {},
- "staticServerOptions": {
- "baseURL": "",
- "servePath": ""
- },
- "isGameTourist": false,
- "condition": {
- "search": {
- "list": []
- },
- "conversation": {
- "list": []
- },
- "game": {
- "list": []
- },
- "plugin": {
- "list": []
- },
- "gamePlugin": {
- "list": []
- },
- "miniprogram": {
- "list": []
- }
- }
+{
+ "description": "项目配置文件",
+ "packOptions": {
+ "ignore": [],
+ "include": []
+ },
+ "setting": {
+ "urlCheck": true,
+ "es6": true,
+ "enhance": false,
+ "postcss": true,
+ "preloadBackgroundData": false,
+ "minified": true,
+ "newFeature": false,
+ "coverView": true,
+ "nodeModules": false,
+ "autoAudits": false,
+ "showShadowRootInWxmlPanel": true,
+ "scopeDataCheck": false,
+ "uglifyFileName": false,
+ "checkInvalidKey": true,
+ "checkSiteMap": true,
+ "uploadWithSourceMap": true,
+ "compileHotReLoad": false,
+ "useMultiFrameRuntime": true,
+ "useApiHook": true,
+ "useApiHostProcess": true,
+ "babelSetting": {
+ "ignore": [],
+ "disablePlugins": [],
+ "outputPath": ""
+ },
+ "enableEngineNative": false,
+ "bundle": false,
+ "useIsolateContext": true,
+ "useCompilerModule": true,
+ "userConfirmedUseCompilerModuleSwitch": false,
+ "userConfirmedBundleSwitch": false,
+ "packNpmManually": false,
+ "packNpmRelationList": [],
+ "minifyWXSS": true,
+ "compileWorklet": false,
+ "minifyWXML": true,
+ "localPlugins": false,
+ "disableUseStrict": false,
+ "useCompilerPlugins": false,
+ "condition": false,
+ "swc": false,
+ "disableSWC": true
+ },
+ "compileType": "miniprogram",
+ "libVersion": "2.16.1",
+ "appid": "wx29215aa1bd97bbd6",
+ "projectname": "niushop_b2c_v4_uniapp",
+ "isGameTourist": false,
+ "condition": {
+ "search": {
+ "list": []
+ },
+ "conversation": {
+ "list": []
+ },
+ "game": {
+ "list": []
+ },
+ "plugin": {
+ "list": []
+ },
+ "gamePlugin": {
+ "list": []
+ },
+ "miniprogram": {
+ "list": []
+ }
+ },
+ "simulatorPluginLibVersion": {},
+ "editorSetting": {}
}
\ No newline at end of file
diff --git a/project.private.config.json b/project.private.config.json
new file mode 100644
index 0000000..7d61403
--- /dev/null
+++ b/project.private.config.json
@@ -0,0 +1,24 @@
+{
+ "libVersion": "3.12.1",
+ "projectname": "niushop_b2c_v4_uniapp",
+ "condition": {},
+ "setting": {
+ "urlCheck": true,
+ "coverView": true,
+ "lazyloadPlaceholderEnable": false,
+ "skylineRenderEnable": false,
+ "preloadBackgroundData": false,
+ "autoAudits": false,
+ "useApiHook": true,
+ "useApiHostProcess": true,
+ "showShadowRootInWxmlPanel": true,
+ "useStaticServer": false,
+ "useLanDebug": false,
+ "showES6CompileOption": false,
+ "compileHotReLoad": true,
+ "checkInvalidKey": true,
+ "ignoreDevUnusedFiles": true,
+ "bigPackageSizeSupport": false,
+ "useIsolateContext": true
+ }
+}
\ No newline at end of file