Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
言程序plus
uni-starter
提交
df9e97f2
U
uni-starter
项目概览
言程序plus
/
uni-starter
与 Fork 源项目一致
Fork自
DCloud / uni-starter
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
U
uni-starter
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
df9e97f2
编写于
9月 01, 2022
作者:
DCloud_JSON
提交者:
study夏羽
10月 25, 2022
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
修复 iOS端,一键登录功能卡在showLoading的问题
上级
01b86b63
变更
11
隐藏空白更改
内联
并排
Showing
11 changed file
with
168 addition
and
222 deletion
+168
-222
changelog.md
changelog.md
+2
-0
components/uni-quick-login/uni-quick-login.vue
components/uni-quick-login/uni-quick-login.vue
+11
-68
manifest.json
manifest.json
+77
-70
package.json
package.json
+1
-1
pages/ucenter/login-page/index/index.vue
pages/ucenter/login-page/index/index.vue
+2
-3
uni_modules.config.json
uni_modules.config.json
+2
-2
uni_modules/uni-id-cf/uniCloud/cloudfunctions/uni-id-cf/index.js
...ules/uni-id-cf/uniCloud/cloudfunctions/uni-id-cf/index.js
+4
-2
uni_modules/uni-id-cf/uniCloud/cloudfunctions/uni-id-cf/package.json
.../uni-id-cf/uniCloud/cloudfunctions/uni-id-cf/package.json
+17
-14
uni_modules_tools/change_after.js
uni_modules_tools/change_after.js
+6
-3
uni_modules_tools/config.js
uni_modules_tools/config.js
+21
-35
uni_modules_tools/main.js
uni_modules_tools/main.js
+25
-24
未找到文件。
changelog.md
浏览文件 @
df9e97f2
## 1.2.8(2022-09-01)
+
修复 iOS端,一键登录功能卡在showLoading的问题
## 1.2.7(2022-08-10)
## 1.2.7(2022-08-10)
-
修复微信小程序绑定手机号失败的问题
-
修复微信小程序绑定手机号失败的问题
## 1.2.6(2022-06-29)
## 1.2.6(2022-06-29)
...
...
components/uni-quick-login/uni-quick-login.vue
浏览文件 @
df9e97f2
...
@@ -190,10 +190,8 @@
...
@@ -190,10 +190,8 @@
icon
:
'
none
'
icon
:
'
none
'
});
});
}
}
uni
.
showLoading
({
mask
:
true
})
if
(
type
==
'
univerify
'
)
{
if
(
type
==
'
univerify
'
&&
uni
.
getUniverifyManager
)
{
let
univerifyManager
=
uni
.
getUniverifyManager
()
let
univerifyManager
=
uni
.
getUniverifyManager
()
console
.
log
(
'
是新版
'
);
let
onButtonsClickFn
=
async
res
=>
{
let
onButtonsClickFn
=
async
res
=>
{
console
.
log
(
'
点击了第三方登录,provider:
'
,
res
,
res
.
provider
,
this
.
univerifyStyle
.
buttons
.
list
);
console
.
log
(
'
点击了第三方登录,provider:
'
,
res
,
res
.
provider
,
this
.
univerifyStyle
.
buttons
.
list
);
//同步一键登录弹出层隐私协议框是否打勾
//同步一键登录弹出层隐私协议框是否打勾
...
@@ -231,10 +229,11 @@
...
@@ -231,10 +229,11 @@
}
}
// 订阅自定义按钮点击事件
// 订阅自定义按钮点击事件
univerifyManager
.
onButtonsClick
(
onButtonsClickFn
)
univerifyManager
.
onButtonsClick
(
onButtonsClickFn
)
// 调用一键登录弹框
// 调用一键登录弹框
return
univerifyManager
.
login
({
console
.
log
(
this
.
univerifyStyle
,
univerifyManager
.
login
);
"
univerifyStyle
"
:
this
.
univerifyStyle
,
return
univerifyManager
.
login
({
success
:
res
=>
{
"
univerifyStyle
"
:
this
.
univerifyStyle
,
success
:
res
=>
{
console
.
log
(
'
login success
'
,
res
)
console
.
log
(
'
login success
'
,
res
)
this
.
login
(
res
.
authResult
,
'
univerify
'
)
this
.
login
(
res
.
authResult
,
'
univerify
'
)
},
},
...
@@ -245,16 +244,17 @@
...
@@ -245,16 +244,17 @@
});
});
},
},
complete
(
e
){
complete
(
e
){
console
.
log
(
e
);
uni
.
hideLoading
()
uni
.
hideLoading
()
// 取消订阅自定义按钮点击事件
// 取消订阅自定义按钮点击事件
univerifyManager
.
offButtonsClick
(
onButtonsClickFn
)
univerifyManager
.
offButtonsClick
(
onButtonsClickFn
)
}
}
})
})
}
}
uni
.
showLoading
({
mask
:
true
})
uni
.
login
({
uni
.
login
({
"
provider
"
:
type
,
"
provider
"
:
type
,
"
onlyAuthorize
"
:
true
,
//请勿直接使用前端获取的unionid或openid直接用于登录,前端的数据都是不可靠的
"
onlyAuthorize
"
:
true
,
//请勿直接使用前端获取的unionid或openid直接用于登录,前端的数据都是不可靠的
"
univerifyStyle
"
:
this
.
univerifyStyle
,
complete
:
(
e
)
=>
{
complete
:
(
e
)
=>
{
console
.
log
(
e
);
console
.
log
(
e
);
uni
.
hideLoading
()
uni
.
hideLoading
()
...
@@ -271,63 +271,6 @@
...
@@ -271,63 +271,6 @@
},
},
fail
:
async
(
err
)
=>
{
fail
:
async
(
err
)
=>
{
console
.
log
(
err
);
console
.
log
(
err
);
// 以下代码为兼容旧版(HBuilderX3.2.13之前)HBuilderX3.2.13以上版本可直接删除
if
(
type
==
'
univerify
'
&&
!
uni
.
getUniverifyManager
)
{
if
(
err
.
metadata
&&
err
.
metadata
.
error_data
)
{
uni
.
showToast
({
title
:
t
(
'
oneClickLogin
'
)
+
"
:
"
+
err
.
metadata
.
error_data
,
icon
:
'
none
'
});
}
if
(
err
.
errMsg
)
{
uni
.
showToast
({
title
:
t
(
'
oneClickLogin
'
)
+
"
:
"
+
err
.
errMsg
,
icon
:
'
none
'
});
}
switch
(
err
.
errCode
)
{
case
30002
:
console
.
log
(
'
在一键登录界面,点击其他登录方式
'
);
break
;
case
30003
:
console
.
log
(
'
关闭了登录
'
);
if
(
navigateBack
)
{
uni
.
navigateBack
()
}
break
;
case
30006
:
uni
.
showModal
({
title
:
t
(
'
loginErr
'
),
content
:
err
.
metadata
.
error_data
,
showCancel
:
false
,
confirmText
:
t
(
'
gotIt
'
),
});
break
;
case
"
30008
"
:
console
.
log
(
'
点击了第三方登录,provider:
'
,
err
.
provider
);
//同步一键登录弹出层隐私协议框是否打勾
let
agree
=
(
await
uni
.
getCheckBoxState
())[
1
].
state
console
.
log
(
'
agree
'
,
agree
);
uni
.
$emit
(
'
setAgreementsAgree
'
,
agree
)
let
{
path
}
=
this
.
univerifyStyle
.
buttons
.
list
[
res
.
index
]
console
.
log
(
'
path
'
,
path
);
if
(
path
)
{
this
.
to
(
path
)
}
else
{
setTimeout
(()
=>
{
console
.
log
(
'
agree
'
,
this
.
agree
);
this
.
login_before
(
err
.
provider
)
},
500
)
}
break
;
default
:
console
.
log
(
err
);
break
;
}
}
// 以上代码为兼容旧版(HBuilderX3.2.13之前)HBuilderX3.2.13以上版本可直接删除
}
}
})
})
},
},
...
...
manifest.json
浏览文件 @
df9e97f2
{
{
"name"
:
"uni-starter"
,
"name"
:
""
,
"appid"
:
"__UNI__EC87F46"
,
"appid"
:
""
,
"description"
:
""
,
"description"
:
""
,
"versionName"
:
"1.0.0"
,
"versionName"
:
""
,
"versionCode"
:
"100"
,
"versionCode"
:
"100"
,
"transformPx"
:
false
,
"transformPx"
:
false
,
/*
5
+App特有相关
*/
"app-plus"
:
{
"app-plus"
:
{
"usingComponents"
:
true
,
"usingComponents"
:
true
,
"nvueStyleCompiler"
:
"uni-app"
,
"nvueStyleCompiler"
:
"uni-app"
,
"compilerVersion"
:
3
,
"compilerVersion"
:
3
,
"splashscreen"
:
{
"splashscreen"
:
{
"alwaysShowBeforeRender"
:
true
,
"alwaysShowBeforeRender"
:
true
,
"waiting"
:
true
,
"waiting"
:
true
,
"autoclose"
:
true
,
"autoclose"
:
true
,
"delay"
:
0
"delay"
:
0
},
},
"modules"
:
{
/*
模块配置
*/
"OAuth"
:
{
"modules"
:
{},
}
/*
应用发布信息
*/
},
"distribute"
:
{
"distribute"
:
{
/*
android打包配置
*/
"android"
:
{
"android"
:
{
"permissions"
:
[
"permissions"
:
[
"<uses-permission android:name=
\"
android.permission.CHANGE_NETWORK_STATE
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.CHANGE_NETWORK_STATE
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.MOUNT_UNMOUNT_FILESYSTEMS
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.MOUNT_UNMOUNT_FILESYSTEMS
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.VIBRATE
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.VIBRATE
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.READ_LOGS
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.READ_LOGS
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.ACCESS_WIFI_STATE
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.ACCESS_WIFI_STATE
\"
/>"
,
"<uses-feature android:name=
\"
android.hardware.camera.autofocus
\"
/>"
,
"<uses-feature android:name=
\"
android.hardware.camera.autofocus
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.ACCESS_NETWORK_STATE
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.ACCESS_NETWORK_STATE
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.CAMERA
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.CAMERA
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.GET_ACCOUNTS
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.GET_ACCOUNTS
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.READ_PHONE_STATE
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.READ_PHONE_STATE
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.CHANGE_WIFI_STATE
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.CHANGE_WIFI_STATE
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.WAKE_LOCK
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.WAKE_LOCK
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.FLASHLIGHT
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.FLASHLIGHT
\"
/>"
,
"<uses-feature android:name=
\"
android.hardware.camera
\"
/>"
,
"<uses-feature android:name=
\"
android.hardware.camera
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.WRITE_SETTINGS
\"
/>"
"<uses-permission android:name=
\"
android.permission.WRITE_SETTINGS
\"
/>"
]
]
},
},
"ios"
:
{
/*
ios打包配置
*/
},
"ios"
:
{},
"sdkConfigs"
:
{
/*
SDK配置
*/
"oauth"
:
{
"sdkConfigs"
:
{}
"univerify"
:
{
}
}
},
}
/*
快应用特有相关
*/
}
"quickapp"
:
{},
}
/*
小程序特有相关
*/
},
"mp-weixin"
:
{
"quickapp"
:
{
"appid"
:
""
,
},
"setting"
:
{
"mp-weixin"
:
{
"urlCheck"
:
false
"appid"
:
""
,
},
"setting"
:
{
"usingComponents"
:
true
"urlCheck"
:
false
},
},
"mp-alipay"
:
{
"usingComponents"
:
true
,
"usingComponents"
:
true
"permission"
:
{
},
"scope.userLocation"
:
{
"mp-baidu"
:
{
"desc"
:
"用于提供应用算法支持"
"usingComponents"
:
true
}
},
}
"mp-toutiao"
:
{
},
"usingComponents"
:
true
"mp-alipay"
:
{
},
"usingComponents"
:
true
"uniStatistics"
:
{
},
"enable"
:
false
"mp-baidu"
:
{
},
"usingComponents"
:
true
"vueVersion"
:
"2"
},
"mp-toutiao"
:
{
"usingComponents"
:
true
},
"uniStatistics"
:
{
"enable"
:
false
},
"vueVersion"
:
"2"
}
}
package.json
浏览文件 @
df9e97f2
{
{
"id"
:
"uni-starter"
,
"id"
:
"uni-starter"
,
"displayName"
:
"uni-starter"
,
"displayName"
:
"uni-starter"
,
"version"
:
"1.2.
7
"
,
"version"
:
"1.2.
8
"
,
"description"
:
"云端一体应用快速开发基本项目模版"
,
"description"
:
"云端一体应用快速开发基本项目模版"
,
"keywords"
:
[
"keywords"
:
[
"login"
,
"login"
,
...
...
pages/ucenter/login-page/index/index.vue
浏览文件 @
df9e97f2
...
@@ -125,11 +125,10 @@
...
@@ -125,11 +125,10 @@
@import
url("../common/login-page.css")
;
@import
url("../common/login-page.css")
;
.quickLogin
{
.quickLogin
{
width
:
650rpx
;
height
:
350px
;
height
:
350px
;
align-items
:
center
;
align-items
:
center
;
justify-content
:
center
;
justify-content
:
center
;
}
}
.quickLoginBtn
{
.quickLoginBtn
{
...
...
uni_modules.config.json
浏览文件 @
df9e97f2
{
{
"scripts"
:
{
"scripts"
:
{
"preupload"
:
"node uni_modules_tools/main.js change"
,
//
"preupload"
:
"node uni_modules_tools/main.js change"
,
"postupload"
:
"node uni_modules_tools/main.js recovery"
//
"postupload"
:
"node uni_modules_tools/main.js recovery"
}
}
}
}
\ No newline at end of file
uni_modules/uni-id-cf/uniCloud/cloudfunctions/uni-id-cf/index.js
浏览文件 @
df9e97f2
...
@@ -425,8 +425,10 @@ exports.main = async (event, context) => {
...
@@ -425,8 +425,10 @@ exports.main = async (event, context) => {
await
uniIdLog
(
loginRes
)
await
uniIdLog
(
loginRes
)
return
loginRes
return
loginRes
break
;
break
;
case
'
loginByUniverify
'
:
case
'
loginByUniverify
'
:
res
=
await
uniID
.
loginByUniverify
(
params
)
console
.
error
(
params
)
res
=
await
uniID
.
loginByUniverify
(
params
)
console
.
log
(
999999999
,
res
)
await
uniIdLog
(
res
)
await
uniIdLog
(
res
)
break
;
break
;
case
'
loginByApple
'
:
case
'
loginByApple
'
:
...
...
uni_modules/uni-id-cf/uniCloud/cloudfunctions/uni-id-cf/package.json
浏览文件 @
df9e97f2
{
{
"name"
:
"uni-id-cf-123"
,
"name"
:
"uni-id-cf-123"
,
"version"
:
"1.0.0"
,
"version"
:
"1.0.0"
,
"description"
:
""
,
"description"
:
""
,
"main"
:
"index.js"
,
"main"
:
"index.js"
,
"scripts"
:
{
"scripts"
:
{
"test"
:
"echo
\"
Error: no test specified
\"
&& exit 1"
"test"
:
"echo
\"
Error: no test specified
\"
&& exit 1"
},
},
"author"
:
""
,
"author"
:
""
,
"license"
:
"ISC"
,
"license"
:
"ISC"
,
"dependencies"
:
{
"dependencies"
:
{
"uni-captcha"
:
"file:../../../../uni-captcha/uniCloud/cloudfunctions/common/uni-captcha"
,
"uni-captcha"
:
"file:../../../../uni-captcha/uniCloud/cloudfunctions/common/uni-captcha"
,
"uni-config-center"
:
"file:../../../../uni-config-center/uniCloud/cloudfunctions/common/uni-config-center"
,
"uni-config-center"
:
"file:../../../../uni-config-center/uniCloud/cloudfunctions/common/uni-config-center"
,
"uni-id"
:
"file:../../../../uni-id/uniCloud/cloudfunctions/common/uni-id"
"uni-id"
:
"file:../../../../uni-id/uniCloud/cloudfunctions/common/uni-id"
}
},
"extensions"
:
{
"uni-cloud-verify"
:
{}
}
}
}
uni_modules_tools/change_after.js
浏览文件 @
df9e97f2
const
fs
=
require
(
'
fs
'
);
const
fs
=
require
(
'
fs
'
);
module
.
exports
=
function
(){
module
.
exports
=
function
(){
console
.
log
(
'
开始执行脚本change_after
'
);
console
.
log
(
'
开始执行脚本change_after
'
);
let
changelog
=
fs
.
readFileSync
(
process
.
cwd
()
+
'
/changelog.md
'
,
'
utf-8
'
).
split
(
"
##
"
)[
1
].
split
(
"
\n
"
).
slice
(
1
).
join
(
'
'
);
/*
let changelog = fs.readFileSync(process.cwd() + '/changelog.md', 'utf-8').split("##")[1].split("\n").slice(1).join(' ');
console.log(changelog);
console.log(changelog);
// 这里是修改完相关敏感配置后执行的脚本,你可以在这里自定义逻辑,
// 这里是修改完相关敏感配置后执行的脚本,你可以在这里自定义逻辑,
// 比如执行git提交命令
// 比如执行git提交命令
var shell = require("shelljs");
var shell = require("shelljs");
var exec = shell.exec;
var exec = shell.exec;
...
@@ -20,5 +22,6 @@ module.exports = function(){
...
@@ -20,5 +22,6 @@ module.exports = function(){
shell.echo('Error: Git commit failed');
shell.echo('Error: Git commit failed');
shell.exit(1);
shell.exit(1);
}
}
shell
.
exec
(
`echo git success
${
changelog
}
`
);
shell.exec(`echo git success ${changelog}`);
*/
}
}
\ No newline at end of file
uni_modules_tools/config.js
浏览文件 @
df9e97f2
// "文件路径" : {"键名":"改成什么"}
// "文件路径" : {"键名":"改成什么"}
{
{
"
/manifest.json
"
:
{
"
/manifest.json
"
:
{
"
appid
"
:
"
请点击重新获取
"
,
//清空appid
"
appid
"
:
""
,
"
mp-weixin
"
:
{
"
name
"
:
""
,
"
appid
"
:
""
"
versionName
"
:
""
,
},
"
mp-weixin
"
:
{
"
app-plus
"
:
{
"
appid
"
:
""
"
distribute
"
:{
},
"
sdkConfigs
"
:
{
"
vueVersion
"
:
"
2
"
,
"
oauth
"
:
{
"
app-plus
"
:
{
"
weixin
"
:
{
"
modules
"
:
{
"
appid
"
:
""
,
"
OAuth
"
:
{}
"
appsecret
"
:
""
,
},
"
UniversalLinks
"
:
""
"
distribute
"
:
{
},
"
sdkConfigs
"
:
{
"
univerify
"
:
{}
"
oauth
"
:
{
},
"
univerify
"
:
{}
"
share
"
:
{
}
"
weixin
"
:
{
}
"
appid
"
:
""
,
}
"
UniversalLinks
"
:
""
}
}
},
"
geolocation
"
:
{
"
baidu
"
:
{
"
__platform__
"
:
[
"
ios
"
,
"
android
"
],
"
appkey_ios
"
:
"
请填写地图的key
"
,
"
appkey_android
"
:
"
请填写地图的key
"
}
}
}
}
},
"
_spaceID
"
:
""
,
"
vueVersion
"
:
"
2
"
},
},
"
/uni_modules/uni-config-center/uniCloud/cloudfunctions/common/uni-config-center/uni-id/config.json
"
:
{
"
/uni_modules/uni-config-center/uniCloud/cloudfunctions/common/uni-config-center/uni-id/config.json
"
:
{
"
tokenExpiresIn
"
:
7200
,
"
tokenExpiresIn
"
:
7200
,
"
app
"
:
{
"
app
"
:
{
"
oauth
"
:
{
"
oauth
"
:
{
...
@@ -77,4 +63,4 @@
...
@@ -77,4 +63,4 @@
}
}
}
}
}
}
}
}
\ No newline at end of file
uni_modules_tools/main.js
浏览文件 @
df9e97f2
//脚本文件目录 __dirname
//脚本文件目录 __dirname
//运行脚本的目录,即:项目的目录 process.cwd()
//运行脚本的目录,即:项目的目录 process.cwd()
//配置文件
//配置文件
const
fs
=
require
(
'
fs
'
),
const
fs
=
require
(
'
fs
'
),
Hjson
=
require
(
'
hjson
'
),
Hjson
=
require
(
'
hjson
'
),
config
=
Hjson
.
rt
.
parse
(
fs
.
readFileSync
(
__dirname
+
'
/config.js
'
,
'
utf-8
'
))
config
=
Hjson
.
rt
.
parse
(
fs
.
readFileSync
(
__dirname
+
'
/config.js
'
,
'
utf-8
'
))
const
change_after
=
require
(
'
./change_after
'
)
const
change_after
=
require
(
'
./change_after
'
)
if
(
process
.
argv
[
2
]
==
'
change
'
){
if
(
process
.
argv
[
2
]
==
'
change
'
){
...
@@ -75,28 +75,29 @@ function recovery(){
...
@@ -75,28 +75,29 @@ function recovery(){
//创建目录并写入文件
//创建目录并写入文件
function
writeFileRecursive
(
path
,
buffer
,
callback
)
{
function
writeFileRecursive
(
path
,
buffer
,
callback
)
{
let
lastPath
=
path
.
substring
(
0
,
path
.
lastIndexOf
(
"
/
"
));
let
lastPath
=
path
.
substring
(
0
,
path
.
lastIndexOf
(
"
/
"
));
fs
.
mkdir
(
lastPath
,
{
fs
.
mkdir
(
lastPath
,
{
recursive
:
true
recursive
:
true
},
(
err
)
=>
{
},
(
err
)
=>
{
if
(
err
)
return
callback
(
err
);
if
(
err
)
return
callback
(
err
);
fs
.
writeFile
(
path
,
buffer
,
function
(
err
)
{
fs
.
writeFile
(
path
,
buffer
,
function
(
err
)
{
if
(
err
)
return
callback
(
err
);
if
(
err
)
return
callback
(
err
);
return
callback
(
null
);
return
callback
(
null
);
});
});
});
});
}
}
//递归合并,为了保留注释内容
//递归合并,为了保留注释内容
function
mergeJSON
(
minor
,
main
)
{
function
mergeJSON
(
minor
,
main
)
{
for
(
var
key
in
main
)
{
for
(
var
key
in
main
)
{
if
(
typeof
(
main
[
key
])
!=
'
object
'
)
{
if
(
typeof
(
main
[
key
])
!=
'
object
'
)
{
minor
[
key
]
=
main
[
key
];
minor
[
key
]
=
main
[
key
];
}
else
{
}
else
{
console
.
log
(
'
[
'
,
minor
[
key
],
main
[
key
],
'
]
'
);
mergeJSON
(
minor
[
key
],
main
[
key
]);
mergeJSON
(
minor
[
key
],
main
[
key
]);
}
}
}
}
}
}
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录