eraser há 3 anos atrás
pai
commit
aa1c3b4ead
44 ficheiros alterados com 1072 adições e 61 exclusões
  1. BIN
      assets/startLearning/learningAndExperiment/downloadInstruction/1.png
  2. BIN
      assets/startLearning/learningAndExperiment/downloadInstruction/2.png
  3. BIN
      assets/startLearning/learningAndExperiment/downloadInstruction/3.png
  4. BIN
      assets/startLearning/learningAndExperiment/downloadInstruction/4.png
  5. BIN
      assets/startLearning/learningAndExperiment/downloadInstruction/5.png
  6. 2 2
      components/home/simulation.vue
  7. 2 2
      components/home/simulationBase.vue
  8. 2 2
      components/home/simulationCore.vue
  9. 1 1
      components/home/teacher/teacher.vue
  10. 26 2
      components/introductionToTheExperiment/syjj_second.vue
  11. 35 0
      components/learningProcess/syydsp.vue
  12. 1 0
      components/learningProcess/xqdl.vue
  13. 3 1
      components/learningProcess/xxzlxz.vue
  14. 6 0
      components/login/loginByPWD.vue
  15. 3 3
      components/startLearning/learningAndExperiment/downloadInstruction.vue
  16. 1 1
      components/startLearning/learningAndExperiment/ksxx_xxysy_ylrz/ksxx_xxysy_ylrz.vue
  17. 1 1
      components/startLearning/learningAndExperiment/learningAndExperiment.vue
  18. 2 2
      components/topMenu.vue
  19. 0 7
      components/user/userController.js
  20. 2 2
      myData.js
  21. 2 2
      myData/myData_SYJJ.js
  22. 5 5
      myData/myData_XXYSY.js
  23. 1 1
      myData/myData_XXYSY_YLRZ.js
  24. 2 2
      myData/myData_tests.js
  25. 1 25
      pages/home.vue
  26. 17 0
      uni_modules/uni-link/changelog.md
  27. 128 0
      uni_modules/uni-link/components/uni-link/uni-link.vue
  28. 87 0
      uni_modules/uni-link/package.json
  29. 11 0
      uni_modules/uni-link/readme.md
  30. 8 0
      uni_modules/uni-scss/changelog.md
  31. 1 0
      uni_modules/uni-scss/index.scss
  32. 82 0
      uni_modules/uni-scss/package.json
  33. 4 0
      uni_modules/uni-scss/readme.md
  34. 7 0
      uni_modules/uni-scss/styles/index.scss
  35. 3 0
      uni_modules/uni-scss/styles/setting/_border.scss
  36. 66 0
      uni_modules/uni-scss/styles/setting/_color.scss
  37. 55 0
      uni_modules/uni-scss/styles/setting/_radius.scss
  38. 56 0
      uni_modules/uni-scss/styles/setting/_space.scss
  39. 167 0
      uni_modules/uni-scss/styles/setting/_styles.scss
  40. 24 0
      uni_modules/uni-scss/styles/setting/_text.scss
  41. 146 0
      uni_modules/uni-scss/styles/setting/_variables.scss
  42. 19 0
      uni_modules/uni-scss/styles/tools/functions.scss
  43. 31 0
      uni_modules/uni-scss/theme.scss
  44. 62 0
      uni_modules/uni-scss/variables.scss

BIN
assets/startLearning/learningAndExperiment/downloadInstruction/1.png


BIN
assets/startLearning/learningAndExperiment/downloadInstruction/2.png


BIN
assets/startLearning/learningAndExperiment/downloadInstruction/3.png


BIN
assets/startLearning/learningAndExperiment/downloadInstruction/4.png


BIN
assets/startLearning/learningAndExperiment/downloadInstruction/5.png


+ 2 - 2
components/home/simulation.vue

@@ -7,8 +7,8 @@
 			</view>
 			<view class="s_content">
 				<view class="">
-					影视现场实时特效是虚拟制片的一种影视创作流程与创作技术,处于虚 拟制片前、中、后期中的中期现场创作环节,与虚拟制片的前期艺术设 计、虚拟制作联系尤为密切。影视现场实时特效的核心
-					是通过实时渲染、数据跟踪、CG制作等核心技术,在影视拍摄现场实现虚拟创作与现 实创作的实时同步与实时协作,并在现场呈现影像最终效果。除现场摄 制以外,影视现场实时特效还包括
+					影视与演播空间设计是虚拟制片的一种影视创作流程与创作技术,处于虚 拟制片前、中、后期中的中期现场创作环节,与虚拟制片的前期艺术设 计、虚拟制作联系尤为密切。影视与演播空间设计的核心
+					是通过实时渲染、数据跟踪、CG制作等核心技术,在影视拍摄现场实现虚拟创作与现 实创作的实时同步与实时协作,并在现场呈现影像最终效果。除现场摄 制以外,影视与演播空间设计还包括
 					前期虚拟艺术(数字制景、数字道具、数字角色)的再创作和后期处理(合成、调色)的现场创作。
 				</view>
 			</view>

+ 2 - 2
components/home/simulationBase.vue

@@ -7,8 +7,8 @@
 			</view>
 			<view class="s_content">
 				<view class="">
-					影视现场实时特效是虚拟制片的一种影视创作流程与创作技术,处于虚 拟制片前、中、后期中的中期现场创作环节,与虚拟制片的前期艺术设 计、虚拟制作联系尤为密切。影视现场实时特效的核心
-					是通过实时渲染、数据跟踪、CG制作等核心技术,在影视拍摄现场实现虚拟创作与现 实创作的实时同步与实时协作,并在现场呈现影像最终效果。除现场摄 制以外,影视现场实时特效还包括
+					影视与演播空间设计是虚拟制片的一种影视创作流程与创作技术,处于虚 拟制片前、中、后期中的中期现场创作环节,与虚拟制片的前期艺术设 计、虚拟制作联系尤为密切。影视与演播空间设计的核心
+					是通过实时渲染、数据跟踪、CG制作等核心技术,在影视拍摄现场实现虚拟创作与现 实创作的实时同步与实时协作,并在现场呈现影像最终效果。除现场摄 制以外,影视与演播空间设计还包括
 					前期虚拟艺术(数字制景、数字道具、数字角色)的再创作和后期处理(合成、调色)的现场创作。
 				</view>
 			</view>

+ 2 - 2
components/home/simulationCore.vue

@@ -5,8 +5,8 @@
 			<view class="s_title" v-text="'虚拟仿真1号摄影棚'"></view>
 			<view class="s_content">
 				<view class="">
-					影视现场实时特效是虚拟制片的一种影视创作流程与创作技术,处于虚 拟制片前、中、后期中的中期现场创作环节,与虚拟制片的前期艺术设 计、虚拟制作联系尤为密切。影视现场实时特效的核心
-					是通过实时渲染、数据跟踪、CG制作等核心技术,在影视拍摄现场实现虚拟创作与现 实创作的实时同步与实时协作,并在现场呈现影像最终效果。除现场摄 制以外,影视现场实时特效还包括
+					影视与演播空间设计是虚拟制片的一种影视创作流程与创作技术,处于虚 拟制片前、中、后期中的中期现场创作环节,与虚拟制片的前期艺术设 计、虚拟制作联系尤为密切。影视与演播空间设计的核心
+					是通过实时渲染、数据跟踪、CG制作等核心技术,在影视拍摄现场实现虚拟创作与现 实创作的实时同步与实时协作,并在现场呈现影像最终效果。除现场摄 制以外,影视与演播空间设计还包括
 					前期虚拟艺术(数字制景、数字道具、数字角色)的再创作和后期处理(合成、调色)的现场创作。
 				</view>
 			</view>

+ 1 - 1
components/home/teacher/teacher.vue

@@ -8,7 +8,7 @@
 			</view>
 			<view class="s_content">
 				<view class="">
-				影视现场实时特效是虚拟制片的一种影视创作流程与创作技术,处于虚 拟制片前、中、后期中的中期现场创作环节,与虚拟制片的前期艺术设 计、虚拟制作联系尤为密切。影视现场实时特效的核心是通过实时渲 染、数据跟踪、CG制作等核心技术,在影视拍摄现场实现虚拟创作与现 实创作的实时同步与实时协作,并在现场呈现影像最终效果。除现场摄 制以外,影视现场实时特效还包括前期虚拟艺术(数字制景、数字道 具、数字角色)的再创作和后期处理(合成、调色)的现场创作。</view>
+				影视与演播空间设计是虚拟制片的一种影视创作流程与创作技术,处于虚 拟制片前、中、后期中的中期现场创作环节,与虚拟制片的前期艺术设 计、虚拟制作联系尤为密切。影视与演播空间设计的核心是通过实时渲 染、数据跟踪、CG制作等核心技术,在影视拍摄现场实现虚拟创作与现 实创作的实时同步与实时协作,并在现场呈现影像最终效果。除现场摄 制以外,影视与演播空间设计还包括前期虚拟艺术(数字制景、数字道 具、数字角色)的再创作和后期处理(合成、调色)的现场创作。</view>
 			</view>
 		</view>
 

+ 26 - 2
components/introductionToTheExperiment/syjj_second.vue

@@ -1,6 +1,7 @@
 <template>
 	<!-- 实验简介二级 -->
 	<view class="myComRoot df jcc syjj-root">
+		
 		<view class="syjj-body" v-for="(page,pageI) in data_SYJJ" :key="pageI"  v-show="checkedIndex_second==pageI">
 			<!-- 标题 -->
 			<view class="titleBox df fdr jcc" v-show="data_SYJJ[checkedIndex_second].page.length>1">
@@ -22,7 +23,9 @@
 						</text>
 						<!-- link -->
 						<text selectable="true"v-for="(link,index) in content.textList" v-show="link.textType=='link'">
-							<a :href="url" style="text-decoration:underline;color:blue">{{link.text}}</a>
+							<!-- <uni-link href="link.text" text="下载" :showUnderLine="true" style="text-decoration:underline;color:blue"></uni-link> -->
+							<!-- <a :href="url" style="text-decoration:underline;color:blue">{{link.text}}</a> -->
+							<a :href="link.text" style="text-decoration:underline;color:blue">下载</a>
 						</text>
 					</view>
 					<!-- 图片 -->
@@ -32,6 +35,9 @@
 				
 				</view>
 			</view>
+			<view class='videoControl' v-show="checkedIndex_second==4">
+				<video class='aVideo' :src="videoLink"></video>
+			</view>
 		</view>
 	</view>
 </template>
@@ -41,6 +47,8 @@
 	export default {
 		data() {
 			return {
+				videoLink:'https://zhongchuan1.oss-cn-beijing.aliyuncs.com/Video/项目简介视频.mp4?versionId=CAEQDxiBgICV.9qf1hciIGU4MDVlNDk4YjY0NDQyZGRhOTVjMzg3YmNmZTdkY2M2',
+				
 				url:'https://dl.google.com/tag/s/appguid%3D%7B8A69D345-D564-463C-AFF1-A69D9E530F96%7D%26iid%3D%7B7869C644-40DB-D051-55C1-EF1EA244A890%7D%26lang%3Dzh-CN%26browser%3D4%26usagestats%3D1%26appname%3DGoogle%2520Chrome%26needsadmin%3Dprefers%26ap%3Dx64-stable-statsdef_1%26installdataindex%3Dempty/update2/installers/ChromeSetup.exe',
 				
 				checkedIndex_second: 0, //二级页面选择、外部调用:如,评审账号、快速进入实验等
@@ -65,7 +73,7 @@
 			// 	this.checkedIndex_bodyTitle=0;
 			// },
 			onTitleClick(index) {
-				this.checkedIndex_bodyTitle = index
+				this.checkedIndex_bodyTitle = index;
 				// console.log("***", this.data_SYJJ[this.checkedIndex_second][this.checkedIndex_bodyTitle].content.src.type);
 			},
 			showPage(pageIndex) {
@@ -126,4 +134,20 @@
 		width: px2vw(1000);
 	}
 	
+	.videoControl{
+		width: 100%;
+		height: 100%;
+		
+		display: flex;
+		justify-content: center;
+		align-items:center;	
+		flex-direction: row;
+		
+		border: 3rpx solid #D7D7D7;
+	}
+	.aVideo
+	{
+		width: 100%;
+		height: 100%;
+	}
 </style>

+ 35 - 0
components/learningProcess/syydsp.vue

@@ -1,8 +1,43 @@
 <template>
+	<view class='videoControl' v-show="checkedIndex_second==4">
+		<video class='aVideo' :src="videoLink"></video>
+	</view>
 </template>
 
 <script>
+	export default {
+		components: {
+			
+		},
+		onLoad() {
+
+		},
+		data() {
+			return {
+				videoLink:'https://zhongchuan1.oss-cn-beijing.aliyuncs.com/Video/实验引导视频.mp4?versionId=CAEQDxiBgIDPmP.f1hciIDNlMWUzYjAyZmFhYjQ0OGQ4MDkxNDBkYTBkMDQwOGQ1',
+			}
+		},
+		methods: {
+		
+		}
+	}
 </script>
 
 <style>
+	.videoControl{
+		width: 100%;
+		height: 100%;
+		
+		display: flex;
+		justify-content: center;
+		align-items:center;	
+		flex-direction: row;
+		
+		border: 3rpx solid #D7D7D7;
+	}
+	.aVideo
+	{
+		width: 100%;
+		height: 100%;
+	}
 </style>

+ 1 - 0
components/learningProcess/xqdl.vue

@@ -22,6 +22,7 @@
 		},
 		data() {
 			return {
+				
 				btn1List: [{
 						"src": require("../../assets/topMenu/preludePreparation.png"),
 						"text": "学习概要"

+ 3 - 1
components/learningProcess/xxzlxz.vue

@@ -23,7 +23,9 @@
 						</text>
 						<!-- link -->
 						<text selectable="true" v-for="(link,index) in content.textList" v-show="link.textType=='link'">
-							<a :href="link.url" style="text-decoration:underline;color:blue">{{link.text}}</a>
+							<!-- <uni-link href="link.text" text="下载" :showUnderLine="true" style="text-decoration:underline;color:blue"></uni-link> -->
+							<!-- <a :href="link.url" style="text-decoration:underline;color:blue">{{link.text}}</a> -->
+							<a :href="link.text" style="text-decoration:underline;color:blue">下载</a>
 						</text>
 					</view>
 					<!-- 图片 -->

+ 6 - 0
components/login/loginByPWD.vue

@@ -68,6 +68,12 @@
 				this.isShowTip = 0;
 			},
 			onLogin() {
+				//测试直接登录用
+				// localStorage.setItem("account", this.account);
+				// localStorage.setItem("password", this.password);
+				// this.$emit("onLogin");
+				// return;
+				
 				console.log("IlabAccount=",this.account+";Password=", this.password)
 				
 				let url = mydata_api + "/user/loginin";

+ 3 - 3
components/startLearning/learningAndExperiment/downloadInstruction.vue

@@ -18,11 +18,11 @@
 			return {
 				list:[
 					{
-						'text':'1、下载完成后,将压缩包“影视现场实时特效创作实验客户端”解压',
+						'text':'1、下载完成后,将压缩包“影视与演播空间设计创作实验客户端”解压',
 						'image':require("../../../assets/startLearning/learningAndExperiment/downloadInstruction/1.png"),
 					},
 					{
-						'text':'2、解压后,双击文件夹内的“影视现场实时特效创作实验客户端.exe”,运行客户端',
+						'text':'2、解压后,双击文件夹内的“影视与演播空间设计创作实验客户端.exe”,运行客户端',
 						'image':require("../../../assets/startLearning/learningAndExperiment/downloadInstruction/2.png"),
 					},
 					{
@@ -42,7 +42,7 @@
 						'image':require("../../../assets/startLearning/learningAndExperiment/downloadInstruction/5.png"),
 					},
 					{
-						'text':'4、再次双击“影视现场实时特效创作实验客户端.exe”,运行客户端。',
+						'text':'4、再次双击“影视与演播空间设计创作实验客户端.exe”,运行客户端。',
 						'image':0,
 					},
 					{

+ 1 - 1
components/startLearning/learningAndExperiment/ksxx_xxysy_ylrz/ksxx_xxysy_ylrz.vue

@@ -171,7 +171,7 @@
 						"text": '学习知识点',
 						"icon_btn1_checked": require('../../../../assets/learning/icon_ylrz_menu_02.png'),
 						"icon_btn1_unchecked": require('../../../../assets/learning/icon_ylrz_menu_01.png'),
-						"list": ['课程地图及知识点位置', '知识点:虚拟制片流程', '知识点:虚拟引擎', '知识点:影视现场实时特效']
+						"list": ['课程地图及知识点位置', '知识点:虚拟制片流程', '知识点:虚拟引擎', '知识点:影视与演播空间设计']
 					},
 					{
 						"text": '测验(完成获得10分)',

+ 1 - 1
components/startLearning/learningAndExperiment/learningAndExperiment.vue

@@ -89,7 +89,7 @@
 			},
 			onClick_download_btn() {
 				//客户端下载
-				window.location.href = 'https://zhongchuan1.oss-cn-beijing.aliyuncs.com/WebDownload/%E5%BD%B1%E8%A7%86%E7%8E%B0%E5%9C%BA%E5%AE%9E%E6%97%B6%E7%89%B9%E6%95%88%E5%88%9B%E4%BD%9C%E5%AE%9E%E9%AA%8C%E5%AE%A2%E6%88%B7%E7%AB%AF.rar?versionId=CAEQGxiBgIDo8L.sghgiIGQ1OWQwZDliMjgzMDQ5YmViN2U2ZTFmM2IzN2ViZjFm';
+				window.location.href = 'https://zhongchuan1.oss-cn-beijing.aliyuncs.com/WebDownload/%E5%BD%B1%E8%A7%86%E7%8E%B0%E5%9C%BA%E5%AE%9E%E6%97%B6%E7%89%B9%E6%95%88%E5%88%9B%E4%BD%9C%E5%AE%9E%E9%AA%8C%E5%AE%A2%E6%88%B7%E7%AB%AF.rar?versionId=CAEQGxiBgID89rStghgiIGI2MDZkNDEzZTE4YzQ4MWZiYzQ0MmVhZGNlY2Y2MjRh';
 			}
 		}
 	}

+ 2 - 2
components/topMenu.vue

@@ -8,7 +8,7 @@
 			</view>
 			<!-- 左上角标题 -->
 			<view class="df aic topMenu-lefttitle-box">
-				<!-- <view v-show="middleShowIndex==0" @click="onClick_topMenu_sy">影视现场实时特效虚拟仿真实验</view> -->
+				<!-- <view v-show="middleShowIndex==0" @click="onClick_topMenu_sy">影视与演播空间设计虚拟仿真实验</view> -->
 				<img v-show="middleShowIndex==0" src="../assets/topMenu/TopLogo.png" style="width: 100%"></img>
 			
 				<view v-show="middleShowIndex==1" class="df fdr aic">
@@ -60,7 +60,7 @@
 				<view v-show="middleShowIndex==11">虚拟影视项目开发管理中心</view>
 				<view v-show="middleShowIndex==12">虚拟仿真真题拍摄基地</view>
 				<view v-show="middleShowIndex==13" class="df fdr aic">
-					<view>影视现场实时特效虚拟仿真实验</view>
+					<view>影视与演播空间设计虚拟仿真实验</view>
 					<view class="topMenu-lefttitle-line"></view>
 				</view>
 				<view v-show="middleShowIndex==14" class="df fdr aic">

+ 0 - 7
components/user/userController.js

@@ -317,9 +317,6 @@ userController = {
 					}, null);
 					//如果开始时间为0
 					mydata_userInfo.StartTime = Math.round((new Date().getTime()+ 1000)/1000);
-					//var m = new Date();
-					//var n = new Date(m.getTime() + 1000 * 60)
-					
 					let parameter={
 						"UserID":mydata_userInfo.UserID,
 						"ExamId": mydata_examInfo.Id,
@@ -363,11 +360,7 @@ userController = {
 				{
 					data_scores = JSON.parse(scoreStep);
 				}
-				// let scoreJson = JSON.parse(scoreStep);
-				// data_scores = scoreJson;
-				// console.log('分数=',res5)
 			}, null);
-			
 		}, null);
 	},
 	//原理认知0

+ 2 - 2
myData.js

@@ -14,8 +14,8 @@ topMenuS = {
 	"home2": "虚拟仿真库",
 	"home3": "虚拟影视项目开发管理中心",
 	"home4": "虚拟仿真真题拍摄基地",
-	// "home5": "影视现场实时特效虚拟仿真实验",
-	// "info": "影视现场实时特效虚拟仿真实验",
+	// "home5": "影视与演播空间设计虚拟仿真实验",
+	// "info": "影视与演播空间设计虚拟仿真实验",
 	"home5": "中国传媒大学 | XR创作虚拟仿真实验",
 	"info": "中国传媒大学 | XR创作虚拟仿真实验",
 }

+ 2 - 2
myData/myData_SYJJ.js

@@ -380,7 +380,7 @@ myData_SYJJ_SYGS={
 					"textList":[
 						{
 							"textType":'nor',
-							"text":'基于全实时LED墙技术的影视现场实时特效创作虚拟仿真实验分为5部分教学内容:原理认知教学、拍摄现场实地考察、技术搭建教学、艺术创作教学、虚拟艺术教学。这些教学内容围绕学校、影视公司、拍摄基地三个空间展开,设计了相对应的5个学习模块:'
+							"text":'基于全实时LED墙技术的影视与演播空间设计创作虚拟仿真实验分为5部分教学内容:原理认知教学、拍摄现场实地考察、技术搭建教学、艺术创作教学、虚拟艺术教学。这些教学内容围绕学校、影视公司、拍摄基地三个空间展开,设计了相对应的5个学习模块:'
 						}
 					]
 				},
@@ -636,7 +636,7 @@ myData_SYJJ_XMJJSP={
 			"content":[
 				{
 					"type":'video',
-					"src":''
+					"src":'https://zhongchuan1.oss-cn-beijing.aliyuncs.com/Video/项目简介视频.mp4?versionId=CAEQDxiBgICV.9qf1hciIGU4MDVlNDk4YjY0NDQyZGRhOTVjMzg3YmNmZTdkY2M2'
 				},
 			]
 		}

+ 5 - 5
myData/myData_XXYSY.js

@@ -20,7 +20,7 @@ myData_XXYSY_YLRZ = {
 			],
 			[
 				{
-					"text": '原理认知是“影视现场实时特效”的理论学习部分,该部分包括知识点学习、模块测验两个部分的内容。',
+					"text": '原理认知是“影视与演播空间设计”的理论学习部分,该部分包括知识点学习、模块测验两个部分的内容。',
 					"color": '#020202',
 					"fontWeight":'normal'
 				}
@@ -67,7 +67,7 @@ myData_XXYSY_SJKC = {
 			],
 			[
 				{
-					"text": '实景勘察是“影视现场实时特效”的实景学习部分,该部分用360度影像将真实的影视现场实时特效摄影棚进行复现。同学们可以在其中进行环境感知、设备认知、模块测验3个部分的内容。',
+					"text": '实景勘察是“影视与演播空间设计”的实景学习部分,该部分用360度影像将真实的影视与演播空间设计摄影棚进行复现。同学们可以在其中进行环境感知、设备认知、模块测验3个部分的内容。',
 					"color": '#020202',
 					"fontWeight":'normal'
 				}
@@ -109,7 +109,7 @@ myData_XXYSY_XNJSDJ = {
 			],
 			[
 				{
-					"text": '虚拟技术搭建是“影视现场实时特效”的虚拟实验部分,该部分主要解决“影视现场实时特效”的技术问题,包括影视现场实时特效系统的搭建、设备认知、设备连接3个部分的内容。',
+					"text": '虚拟技术搭建是“影视与演播空间设计”的虚拟实验部分,该部分主要解决“影视与演播空间设计”的技术问题,包括影视与演播空间设计系统的搭建、设备认知、设备连接3个部分的内容。',
 					"color": '#020202',
 					"fontWeight":'normal'
 				}
@@ -173,7 +173,7 @@ myData_XXYSY_XNYSZZ = {
 			],
 			[
 				{
-					"text": '虚拟艺术创作是“影视现场实时特效”的虚拟实验部分,该部分主要解决“影视现场实时特效”的艺术实践问题。该部分以项目为核心,各专业以职务为角色,通过高保真模拟影视剧组的创作流程,使同学们沉浸式“进组”实践。',
+					"text": '虚拟艺术创作是“影视与演播空间设计”的虚拟实验部分,该部分主要解决“影视与演播空间设计”的艺术实践问题。该部分以项目为核心,各专业以职务为角色,通过高保真模拟影视剧组的创作流程,使同学们沉浸式“进组”实践。',
 					"color": '#020202',
 					"fontWeight":'normal'
 				}
@@ -230,7 +230,7 @@ myData_XXYSY_XNZYKJS = {
 			],
 			[
 				{
-					"text": '虚拟资源库是“影视现场实时特效”的实验持续建设与拓展部分,该模块具有以下功能特点:',
+					"text": '虚拟资源库是“影视与演播空间设计”的实验持续建设与拓展部分,该模块具有以下功能特点:',
 					"color": '#020202',
 					"fontWeight":'normal'
 				}

+ 1 - 1
myData/myData_XXYSY_YLRZ.js

@@ -672,7 +672,7 @@ YLRZ_ZSD_04={
 		},
 		{
 			"type":'text',
-			"details":'影视现场实时特效是虚拟制片的一种影视创作流程与创作技术,处于虚拟制片前、中、后期中的中期现场创作环节,与虚拟制片的前期艺术设计、虚拟制作联系尤为密切。影视现场实时特效的核心是通过实时渲染、数据跟踪、CG制作等核心技术,在影视拍摄现场实现虚拟创作与现实创作的实时同步与实时协作,并在现场呈现影像最终效果。除现场摄制以外,影视现场实时特效还包括前期虚拟艺术(数字制景、数字道具、数字角色)的再创作和后期处理(合成、调色)的现场创作。'
+			"details":'影视与演播空间设计是虚拟制片的一种影视创作流程与创作技术,处于虚拟制片前、中、后期中的中期现场创作环节,与虚拟制片的前期艺术设计、虚拟制作联系尤为密切。影视与演播空间设计的核心是通过实时渲染、数据跟踪、CG制作等核心技术,在影视拍摄现场实现虚拟创作与现实创作的实时同步与实时协作,并在现场呈现影像最终效果。除现场摄制以外,影视与演播空间设计还包括前期虚拟艺术(数字制景、数字道具、数字角色)的再创作和后期处理(合成、调色)的现场创作。'
 		},
 		{
 			"type":'space'

+ 2 - 2
myData/myData_tests.js

@@ -28,12 +28,12 @@ myData_test_YLRZ={
 			"a":[1,0,0,1]
 		},
 		{
-			"q":'影视现场实时特效的系统构成包括',
+			"q":'影视与演播空间设计的系统构成包括',
 			"a_list":['LED环幕','虚拟引擎服务器','VR探查系统','摄影及运动跟踪系统'],
 			"a":[1,1,1,1]
 		},
 		{
-			"q":'影视现场实时特效的工作原理是',
+			"q":'影视与演播空间设计的工作原理是',
 			"a_list":['通过实时渲染,将虚拟场景实时显示于屏幕。','通过运动跟踪系统,使摄影机取景画面的透视、取景与LED屏幕中的透视、取景保持一致。','通过VR探查系统,在现场修改场景。','通过UE插件,现场改变天色、色调。'],
 			"a":[1,1,1,1]
 		},

+ 1 - 25
pages/home.vue

@@ -199,7 +199,6 @@
 				
 				return;
 			}
-			
 			// console.log('从保存用户名密码登录')
 			let account = localStorage.getItem("account");
 			let password = localStorage.getItem("password");
@@ -225,28 +224,6 @@
 							console.log("home从保存用户名密码登录data=", data);
 								console.log("Token=", data.Token);
 							this.onLoginSuccess(data.UserID,data.Name,data.Type,data.Image);
-							// if (data.Image != '') {
-							// 	mydata_userInfo.avatarSrc = data.Image;
-							// }
-							// console.log("home登陆成功data=", data);
-							// mydata_userInfo.Name = data.Name;
-							// mydata_userInfo.UserID = data.UserID;
-							// // mydata_userInfo.Position = data.Position;
-							// mydata_userInfo.role = data.Type;
-							
-							// if (mydata_userInfo.role == '老师') {
-							// 	userController.updateStudentList(null, null);
-							// }
-							// else{
-							// 	mydata_userInfo.role = '学生';
-							// }
-							// userController.updateUserInfo();
-							// userController.updateScore();
-
-							// // MyRequest.SetUserType(mydata_userInfo.role,null,null);
-
-							// getApp().globalData.bLogin = true;
-							// this.onLogin();
 						}
 					},
 					fail: (res) => {
@@ -255,7 +232,6 @@
 				});
 			}
 		},
-		
 		methods: {
 			onLoginSuccess(UserID,Name,Type,Image)
 			{
@@ -625,7 +601,7 @@
 				}
 				this.showPage(targetPage);
 			},
-			//顶部导航点击"影视现场实时特效虚拟仿真实验"
+			//顶部导航点击"影视与演播空间设计虚拟仿真实验"
 			onClick_topMenu_sy() {
 				this.showPage(4);
 				this.$refs.SY.initData();

+ 17 - 0
uni_modules/uni-link/changelog.md

@@ -0,0 +1,17 @@
+## 1.0.0(2021-11-19)
+- 优化 组件UI,并提供设计资源,详见:[https://uniapp.dcloud.io/component/uniui/resource](https://uniapp.dcloud.io/component/uniui/resource)
+- 文档迁移,详见:[https://uniapp.dcloud.io/component/uniui/uni-link](https://uniapp.dcloud.io/component/uniui/uni-link)
+## 1.1.7(2021-11-08)
+## 0.0.7(2021-09-03)
+- 修复 在 nvue 下不显示的 bug
+## 0.0.6(2021-07-30)
+- 新增 支持自定义插槽
+## 0.0.5(2021-06-21)
+- 新增 download 属性,H5平台下载文件名
+## 0.0.4(2021-05-12)
+- 新增 组件示例地址
+## 0.0.3(2021-03-09)
+- 新增 href 属性支持 tel:|mailto:
+
+## 0.0.2(2021-02-05)
+- 调整为uni_modules目录规范

+ 128 - 0
uni_modules/uni-link/components/uni-link/uni-link.vue

@@ -0,0 +1,128 @@
+<template>
+	<a v-if="isShowA" class="uni-link" :href="href"
+		:class="{'uni-link--withline':showUnderLine===true||showUnderLine==='true'}"
+		:style="{color,fontSize:fontSize+'px'}" :download="download">
+		<slot>{{text}}</slot>
+	</a>
+	<!-- #ifndef APP-NVUE -->
+	<text v-else class="uni-link" :class="{'uni-link--withline':showUnderLine===true||showUnderLine==='true'}"
+		:style="{color,fontSize:fontSize+'px'}" @click="openURL">
+		<slot>{{text}}</slot>
+	</text>
+	<!-- #endif -->
+	<!-- #ifdef APP-NVUE -->
+	<text v-else class="uni-link" :class="{'uni-link--withline':showUnderLine===true||showUnderLine==='true'}"
+		:style="{color,fontSize:fontSize+'px'}" @click="openURL">
+		{{text}}
+	</text>
+	<!-- #endif -->
+</template>
+
+<script>
+	/**
+	 * Link 外部网页超链接组件
+	 * @description uni-link是一个外部网页超链接组件,在小程序内复制url,在app内打开外部浏览器,在h5端打开新网页
+	 * @tutorial https://ext.dcloud.net.cn/plugin?id=1182
+	 * @property {String} href 点击后打开的外部网页url
+	 * @property {String} text 显示的文字
+	 * @property {String} downlaod H5平台下载文件名
+	 * @property {Boolean} showUnderLine 是否显示下划线
+	 * @property {String} copyTips 在小程序端复制链接时显示的提示语
+	 * @property {String} color 链接文字颜色
+	 * @property {String} fontSize 链接文字大小
+	 * @example * <uni-link href="https://ext.dcloud.net.cn" text="https://ext.dcloud.net.cn"></uni-link>
+	 */
+	export default {
+		name: 'uniLink',
+		props: {
+			href: {
+				type: String,
+				default: ''
+			},
+			text: {
+				type: String,
+				default: ''
+			},
+			download: {
+				type: String,
+				default: ''
+			},
+			showUnderLine: {
+				type: [Boolean, String],
+				default: true
+			},
+			copyTips: {
+				type: String,
+				default: '已自动复制网址,请在手机浏览器里粘贴该网址'
+			},
+			color: {
+				type: String,
+				default: '#999999'
+			},
+			fontSize: {
+				type: [Number, String],
+				default: 14
+			}
+		},
+		computed: {
+			isShowA() {
+				// #ifdef H5
+				this._isH5 = true;
+				// #endif
+				if ((this.isMail() || this.isTel()) && this._isH5 === true) {
+					return true;
+				}
+				return false;
+			}
+		},
+		created() {
+			this._isH5 = null;
+		},
+		methods: {
+			isMail() {
+				return this.href.startsWith('mailto:');
+			},
+			isTel() {
+				return this.href.startsWith('tel:');
+			},
+			openURL() {
+				// #ifdef APP-PLUS
+				if (this.isTel()) {
+					this.makePhoneCall(this.href.replace('tel:', ''));
+				} else {
+					plus.runtime.openURL(this.href);
+				}
+				// #endif
+				// #ifdef H5
+				window.open(this.href)
+				// #endif
+				// #ifdef MP
+				uni.setClipboardData({
+					data: this.href
+				});
+				uni.showModal({
+					content: this.copyTips,
+					showCancel: false
+				});
+				// #endif
+			},
+			makePhoneCall(phoneNumber) {
+				uni.makePhoneCall({
+					phoneNumber
+				})
+			}
+		}
+	}
+</script>
+
+<style>
+	/* #ifndef APP-NVUE */
+	.uni-link {
+		cursor: pointer;
+	}
+
+	/* #endif */
+	.uni-link--withline {
+		text-decoration: underline;
+	}
+</style>

+ 87 - 0
uni_modules/uni-link/package.json

@@ -0,0 +1,87 @@
+{
+  "id": "uni-link",
+  "displayName": "uni-link 超链接",
+  "version": "1.0.0",
+  "description": "uni-link是一个外部网页超链接组件,在小程序内复制url,在app内打开外部浏览器,在h5端打",
+  "keywords": [
+    "uni-ui",
+    "uniui",
+    "link",
+    "超链接",
+    ""
+],
+  "repository": "https://github.com/dcloudio/uni-ui",
+  "engines": {
+    "HBuilderX": ""
+  },
+  "directories": {
+    "example": "../../temps/example_temps"
+  },
+  "dcloudext": {
+    "category": [
+      "前端组件",
+      "通用组件"
+    ],
+    "sale": {
+      "regular": {
+        "price": "0.00"
+      },
+      "sourcecode": {
+        "price": "0.00"
+      }
+    },
+    "contact": {
+      "qq": ""
+    },
+    "declaration": {
+      "ads": "无",
+      "data": "无",
+      "permissions": "无"
+    },
+    "npmurl": "https://www.npmjs.com/package/@dcloudio/uni-ui"
+  },
+  "uni_modules": {
+    "dependencies": ["uni-scss"],
+    "encrypt": [],
+    "platforms": {
+      "cloud": {
+        "tcb": "y",
+        "aliyun": "y"
+      },
+      "client": {
+        "App": {
+          "app-vue": "y",
+          "app-nvue": "y"
+        },
+        "H5-mobile": {
+          "Safari": "y",
+          "Android Browser": "y",
+          "微信浏览器(Android)": "y",
+          "QQ浏览器(Android)": "y"
+        },
+        "H5-pc": {
+          "Chrome": "y",
+          "IE": "y",
+          "Edge": "y",
+          "Firefox": "y",
+          "Safari": "y"
+        },
+        "小程序": {
+          "微信": "y",
+          "阿里": "y",
+          "百度": "y",
+          "字节跳动": "y",
+          "QQ": "y"
+        },
+        "快应用": {
+          "华为": "y",
+          "联盟": "y"
+        },
+        "Vue": {
+            "vue2": "y",
+            "vue3": "y"
+        }
+      }
+    }
+  }
+}

+ 11 - 0
uni_modules/uni-link/readme.md

@@ -0,0 +1,11 @@
+
+
+## Link 链接
+> **组件名:uni-link**
+> 代码块: `uLink`
+
+
+uni-link是一个外部网页超链接组件,在小程序内复制url,在app内打开外部浏览器,在h5端打开新网页。
+
+### [查看文档](https://uniapp.dcloud.io/component/uniui/uni-link)
+#### 如使用过程中有任何问题,或者您对uni-ui有一些好的建议,欢迎加入 uni-ui 交流群:871950839 

+ 8 - 0
uni_modules/uni-scss/changelog.md

@@ -0,0 +1,8 @@
+## 1.0.3(2022-01-21)
+- 优化 组件示例
+## 1.0.2(2021-11-22)
+- 修复 / 符号在 vue 不同版本兼容问题引起的报错问题
+## 1.0.1(2021-11-22)
+- 修复 vue3中scss语法兼容问题
+## 1.0.0(2021-11-18)
+- init

+ 1 - 0
uni_modules/uni-scss/index.scss

@@ -0,0 +1 @@
+@import './styles/index.scss';

+ 82 - 0
uni_modules/uni-scss/package.json

@@ -0,0 +1,82 @@
+{
+  "id": "uni-scss",
+  "displayName": "uni-scss 辅助样式",
+  "version": "1.0.3",
+  "description": "uni-sass是uni-ui提供的一套全局样式 ,通过一些简单的类名和sass变量,实现简单的页面布局操作,比如颜色、边距、圆角等。",
+  "keywords": [
+    "uni-scss",
+    "uni-ui",
+    "辅助样式"
+],
+  "repository": "https://github.com/dcloudio/uni-ui",
+  "engines": {
+    "HBuilderX": "^3.1.0"
+  },
+  "dcloudext": {
+    "category": [
+        "JS SDK",
+        "通用 SDK"
+    ],
+    "sale": {
+      "regular": {
+        "price": "0.00"
+      },
+      "sourcecode": {
+        "price": "0.00"
+      }
+    },
+    "contact": {
+      "qq": ""
+    },
+    "declaration": {
+      "ads": "无",
+      "data": "无",
+      "permissions": "无"
+    },
+    "npmurl": "https://www.npmjs.com/package/@dcloudio/uni-ui"
+  },
+  "uni_modules": {
+    "dependencies": [],
+    "encrypt": [],
+    "platforms": {
+      "cloud": {
+        "tcb": "y",
+        "aliyun": "y"
+      },
+      "client": {
+        "App": {
+          "app-vue": "y",
+          "app-nvue": "u"
+        },
+        "H5-mobile": {
+          "Safari": "y",
+          "Android Browser": "y",
+          "微信浏览器(Android)": "y",
+          "QQ浏览器(Android)": "y"
+        },
+        "H5-pc": {
+          "Chrome": "y",
+          "IE": "y",
+          "Edge": "y",
+          "Firefox": "y",
+          "Safari": "y"
+        },
+        "小程序": {
+          "微信": "y",
+          "阿里": "y",
+          "百度": "y",
+          "字节跳动": "y",
+          "QQ": "y"
+        },
+        "快应用": {
+          "华为": "n",
+          "联盟": "n"
+        },
+        "Vue": {
+            "vue2": "y",
+            "vue3": "y"
+        }
+      }
+    }
+  }
+}

+ 4 - 0
uni_modules/uni-scss/readme.md

@@ -0,0 +1,4 @@
+`uni-sass` 是 `uni-ui`提供的一套全局样式 ,通过一些简单的类名和`sass`变量,实现简单的页面布局操作,比如颜色、边距、圆角等。
+
+### [查看文档](https://uniapp.dcloud.io/component/uniui/uni-sass)
+#### 如使用过程中有任何问题,或者您对uni-ui有一些好的建议,欢迎加入 uni-ui 交流群:871950839 

+ 7 - 0
uni_modules/uni-scss/styles/index.scss

@@ -0,0 +1,7 @@
+@import './setting/_variables.scss';
+@import './setting/_border.scss';
+@import './setting/_color.scss';
+@import './setting/_space.scss';
+@import './setting/_radius.scss';
+@import './setting/_text.scss';
+@import './setting/_styles.scss';

+ 3 - 0
uni_modules/uni-scss/styles/setting/_border.scss

@@ -0,0 +1,3 @@
+.uni-border {
+	border: 1px $uni-border-1 solid;
+}

+ 66 - 0
uni_modules/uni-scss/styles/setting/_color.scss

@@ -0,0 +1,66 @@
+
+// TODO 暂时不需要 class ,需要用户使用变量实现 ,如果使用类名其实并不推荐
+// @mixin get-styles($k,$c) {
+// 	@if $k == size or $k == weight{
+// 		font-#{$k}:#{$c}
+// 	}@else{
+// 		#{$k}:#{$c}
+// 	}
+// }
+$uni-ui-color:(
+	// 主色
+	primary: $uni-primary,
+	primary-disable: $uni-primary-disable,
+	primary-light: $uni-primary-light,
+	// 辅助色
+	success: $uni-success,
+	success-disable: $uni-success-disable,
+	success-light: $uni-success-light,
+	warning: $uni-warning,
+	warning-disable: $uni-warning-disable,
+	warning-light: $uni-warning-light,
+	error: $uni-error,
+	error-disable: $uni-error-disable,
+	error-light: $uni-error-light,
+	info: $uni-info,
+	info-disable: $uni-info-disable,
+	info-light: $uni-info-light,
+	// 中性色
+	main-color: $uni-main-color,
+	base-color: $uni-base-color,
+	secondary-color: $uni-secondary-color,
+	extra-color: $uni-extra-color,
+	// 背景色
+	bg-color: $uni-bg-color,
+	// 边框颜色
+	border-1: $uni-border-1,
+	border-2: $uni-border-2,
+	border-3: $uni-border-3,
+	border-4: $uni-border-4,
+	// 黑色
+	black:$uni-black,
+	// 白色
+	white:$uni-white,
+	// 透明
+	transparent:$uni-transparent
+) !default;
+@each $key, $child in $uni-ui-color {
+	.uni-#{"" + $key} {
+		color: $child;
+	}
+	.uni-#{"" + $key}-bg {
+		background-color: $child;
+	}
+}
+.uni-shadow-sm {
+	box-shadow: $uni-shadow-sm;
+}
+.uni-shadow-base {
+	box-shadow: $uni-shadow-base;
+}
+.uni-shadow-lg {
+	box-shadow: $uni-shadow-lg;
+}
+.uni-mask {
+	background-color:$uni-mask;
+}

+ 55 - 0
uni_modules/uni-scss/styles/setting/_radius.scss

@@ -0,0 +1,55 @@
+@mixin radius($r,$d:null ,$important: false){
+  $radius-value:map-get($uni-radius, $r) if($important, !important, null);
+  // Key exists within the $uni-radius variable
+  @if (map-has-key($uni-radius, $r) and  $d){
+		@if $d == t {
+				border-top-left-radius:$radius-value;
+				border-top-right-radius:$radius-value;
+		}@else if $d == r {
+				border-top-right-radius:$radius-value;
+				border-bottom-right-radius:$radius-value;
+		}@else if $d == b {
+				border-bottom-left-radius:$radius-value;
+				border-bottom-right-radius:$radius-value;
+		}@else if $d == l {
+				border-top-left-radius:$radius-value;
+				border-bottom-left-radius:$radius-value;
+		}@else if $d == tl {
+				border-top-left-radius:$radius-value;
+		}@else if $d == tr {
+				border-top-right-radius:$radius-value;
+		}@else if $d == br {
+				border-bottom-right-radius:$radius-value;
+		}@else if $d == bl {
+				border-bottom-left-radius:$radius-value;
+		}
+  }@else{
+		border-radius:$radius-value;
+  }
+}
+
+@each $key, $child in $uni-radius {
+	@if($key){
+		.uni-radius-#{"" + $key} {
+				@include radius($key)
+		}
+	}@else{
+		.uni-radius {
+				@include radius($key)
+		}
+	}
+}
+
+@each $direction in t, r, b, l,tl, tr, br, bl {
+	@each $key, $child in $uni-radius {
+		@if($key){
+			.uni-radius-#{"" + $direction}-#{"" + $key} {
+				@include radius($key,$direction,false)
+			}
+		}@else{
+			.uni-radius-#{$direction} {
+				@include radius($key,$direction,false)
+			}
+		}
+	}
+}

+ 56 - 0
uni_modules/uni-scss/styles/setting/_space.scss

@@ -0,0 +1,56 @@
+
+@mixin fn($space,$direction,$size,$n) {
+	@if $n {
+		#{$space}-#{$direction}: #{$size*$uni-space-root}px
+	} @else {
+		 #{$space}-#{$direction}: #{-$size*$uni-space-root}px
+	}
+}
+@mixin get-styles($direction,$i,$space,$n){
+	@if $direction == t {
+		@include fn($space, top,$i,$n);
+	} 
+	@if $direction == r {
+		@include fn($space, right,$i,$n);
+	} 
+	@if $direction == b {
+		@include fn($space, bottom,$i,$n);
+	} 
+	@if $direction == l {
+	 @include fn($space, left,$i,$n);
+	} 
+	@if $direction == x {
+		@include fn($space, left,$i,$n);
+		@include fn($space, right,$i,$n);
+	} 
+	@if $direction == y {
+		@include fn($space, top,$i,$n);
+		@include fn($space, bottom,$i,$n);
+	} 
+	@if $direction == a {
+		@if $n {
+			#{$space}:#{$i*$uni-space-root}px;
+		} @else {
+			#{$space}:#{-$i*$uni-space-root}px;
+		}
+	} 
+}
+
+@each $orientation in m,p {
+	$space: margin;
+	@if $orientation == m {
+		$space: margin;
+	} @else {
+		$space: padding;
+	}
+	@for $i from 0 through 16 {
+		@each $direction in t, r, b, l, x, y, a {
+			.uni-#{$orientation}#{$direction}-#{$i} { 
+				@include  get-styles($direction,$i,$space,true);
+			} 
+			.uni-#{$orientation}#{$direction}-n#{$i} { 
+				@include  get-styles($direction,$i,$space,false);
+			}
+		}
+	}
+}

+ 167 - 0
uni_modules/uni-scss/styles/setting/_styles.scss

@@ -0,0 +1,167 @@
+/* #ifndef APP-NVUE */
+
+$-color-white:#fff;
+$-color-black:#000;
+@mixin base-style($color) {
+	color: #fff;
+	background-color: $color;
+	border-color: mix($-color-black, $color, 8%);
+	&:not([hover-class]):active {
+		background: mix($-color-black, $color, 10%);
+		border-color: mix($-color-black, $color, 20%);
+		color: $-color-white;
+		outline: none;
+	}
+}
+@mixin is-color($color) {
+	@include base-style($color);
+	&[loading] {
+		@include base-style($color);
+		&::before {
+			margin-right:5px;
+		}
+	}
+	&[disabled] {
+	  &,
+		&[loading],
+	  &:not([hover-class]):active {
+	    color: $-color-white;
+			border-color: mix(darken($color,10%), $-color-white);
+	    background-color: mix($color, $-color-white);
+	  }
+	}
+
+}
+@mixin base-plain-style($color) {
+	color:$color;
+	background-color: mix($-color-white, $color, 90%);
+	border-color: mix($-color-white, $color, 70%);
+	&:not([hover-class]):active {
+	  background: mix($-color-white, $color, 80%);
+	  color: $color;
+	  outline: none;
+		border-color: mix($-color-white, $color, 50%);
+	}
+}
+@mixin is-plain($color){
+	&[plain] {
+		@include base-plain-style($color);
+		&[loading] {
+			@include base-plain-style($color);
+			&::before {
+				margin-right:5px;
+			}
+		}
+		&[disabled] {
+		  &,
+		  &:active {
+		    color: mix($-color-white, $color, 40%);
+		    background-color: mix($-color-white, $color, 90%);
+				border-color: mix($-color-white, $color, 80%);
+		  }
+		}
+	}
+}
+
+
+.uni-btn {
+	margin: 5px;
+	color: #393939;
+	border:1px solid #ccc;
+	font-size: 16px;
+	font-weight: 200;
+	background-color: #F9F9F9;
+	// TODO 暂时处理边框隐藏一边的问题
+	overflow: visible;
+	&::after{
+		border: none;
+	}
+
+	&:not([type]),&[type=default] {
+		color: #999;
+		&[loading] {
+			background: none;
+			&::before {
+				margin-right:5px;
+			}
+		}
+
+
+
+		&[disabled]{
+			color: mix($-color-white, #999, 60%);
+		  &,
+			&[loading],
+		  &:active {
+				color: mix($-color-white, #999, 60%);
+		    background-color: mix($-color-white,$-color-black , 98%);
+				border-color: mix($-color-white,  #999, 85%);
+		  }
+		}
+
+		&[plain] {
+			color: #999;
+			background: none;
+			border-color: $uni-border-1;
+			&:not([hover-class]):active {
+				background: none;
+			  color: mix($-color-white, $-color-black, 80%);
+				border-color: mix($-color-white, $-color-black, 90%);
+			  outline: none;
+			}
+			&[disabled]{
+			  &,
+				&[loading],
+			  &:active {
+			    background: none;
+					color: mix($-color-white, #999, 60%);
+					border-color: mix($-color-white,  #999, 85%);
+			  }
+			}
+		}
+	}
+
+	&:not([hover-class]):active {
+	  color: mix($-color-white, $-color-black, 50%);
+	}
+
+	&[size=mini] {
+		font-size: 16px;
+		font-weight: 200;
+		border-radius: 8px;
+	}
+
+
+
+	&.uni-btn-small {
+		font-size: 14px;
+	}
+	&.uni-btn-mini {
+		font-size: 12px;
+	}
+
+	&.uni-btn-radius {
+		border-radius: 999px;
+	}
+	&[type=primary] {
+		@include is-color($uni-primary);
+		@include is-plain($uni-primary)
+	}
+	&[type=success] {
+		@include is-color($uni-success);
+		@include is-plain($uni-success)
+	}
+	&[type=error] {
+		@include is-color($uni-error);
+		@include is-plain($uni-error)
+	}
+	&[type=warning] {
+		@include is-color($uni-warning);
+		@include is-plain($uni-warning)
+	}
+	&[type=info] {
+		@include is-color($uni-info);
+		@include is-plain($uni-info)
+	}
+}
+/* #endif */

+ 24 - 0
uni_modules/uni-scss/styles/setting/_text.scss

@@ -0,0 +1,24 @@
+@mixin get-styles($k,$c) {
+	@if $k == size or $k == weight{
+		font-#{$k}:#{$c}
+	}@else{
+		#{$k}:#{$c}
+	}
+}
+
+@each $key, $child in $uni-headings {
+	/* #ifndef APP-NVUE */
+	.uni-#{$key} {
+		@each $k, $c in $child {
+			@include get-styles($k,$c)
+		}
+	}
+	/* #endif */
+	/* #ifdef APP-NVUE */
+	.container .uni-#{$key} {
+		@each $k, $c in $child {
+			@include get-styles($k,$c)
+		}
+	}
+	/* #endif */
+}

+ 146 - 0
uni_modules/uni-scss/styles/setting/_variables.scss

@@ -0,0 +1,146 @@
+// @use "sass:math";
+@import  '../tools/functions.scss';
+// 间距基础倍数
+$uni-space-root: 2 !default;
+// 边框半径默认值
+$uni-radius-root:5px !default;
+$uni-radius: () !default;
+// 边框半径断点
+$uni-radius: map-deep-merge(
+  (
+    0: 0,
+		// TODO 当前版本暂时不支持 sm 属性
+    // 'sm': math.div($uni-radius-root, 2),
+    null: $uni-radius-root,
+    'lg': $uni-radius-root * 2,
+    'xl': $uni-radius-root * 6,
+    'pill': 9999px,
+    'circle': 50%
+  ),
+  $uni-radius
+);
+// 字体家族
+$body-font-family: 'Roboto', sans-serif !default;
+// 文本
+$heading-font-family: $body-font-family !default;
+$uni-headings: () !default;
+$letterSpacing: -0.01562em;
+$uni-headings: map-deep-merge(
+  (
+    'h1': (
+      size: 32px,
+			weight: 300,
+			line-height: 50px,
+			// letter-spacing:-0.01562em
+    ),
+    'h2': (
+      size: 28px,
+      weight: 300,
+      line-height: 40px,
+      // letter-spacing: -0.00833em
+    ),
+    'h3': (
+      size: 24px,
+      weight: 400,
+      line-height: 32px,
+      // letter-spacing: normal
+    ),
+    'h4': (
+      size: 20px,
+      weight: 400,
+      line-height: 30px,
+      // letter-spacing: 0.00735em
+    ),
+    'h5': (
+      size: 16px,
+      weight: 400,
+      line-height: 24px,
+      // letter-spacing: normal
+    ),
+    'h6': (
+      size: 14px,
+      weight: 500,
+      line-height: 18px,
+      // letter-spacing: 0.0125em
+    ),
+    'subtitle': (
+      size: 12px,
+      weight: 400,
+      line-height: 20px,
+      // letter-spacing: 0.00937em
+    ),
+    'body': (
+      font-size: 14px,
+			font-weight: 400,
+			line-height: 22px,
+			// letter-spacing: 0.03125em
+    ),
+    'caption': (
+      'size': 12px,
+      'weight': 400,
+      'line-height': 20px,
+      // 'letter-spacing': 0.03333em,
+      // 'text-transform': false
+    )
+  ),
+  $uni-headings
+);
+
+
+
+// 主色
+$uni-primary: #2979ff !default;
+$uni-primary-disable:lighten($uni-primary,20%) !default;
+$uni-primary-light: lighten($uni-primary,25%) !default;
+
+// 辅助色
+// 除了主色外的场景色,需要在不同的场景中使用(例如危险色表示危险的操作)。
+$uni-success: #18bc37 !default;
+$uni-success-disable:lighten($uni-success,20%) !default;
+$uni-success-light: lighten($uni-success,25%) !default;
+
+$uni-warning: #f3a73f !default;
+$uni-warning-disable:lighten($uni-warning,20%) !default;
+$uni-warning-light: lighten($uni-warning,25%) !default;
+
+$uni-error: #e43d33 !default;
+$uni-error-disable:lighten($uni-error,20%) !default;
+$uni-error-light: lighten($uni-error,25%) !default;
+
+$uni-info: #8f939c !default;
+$uni-info-disable:lighten($uni-info,20%) !default;
+$uni-info-light: lighten($uni-info,25%) !default;
+
+// 中性色
+// 中性色用于文本、背景和边框颜色。通过运用不同的中性色,来表现层次结构。
+$uni-main-color: #3a3a3a !default; 			// 主要文字
+$uni-base-color: #6a6a6a !default;			// 常规文字
+$uni-secondary-color: #909399 !default;	// 次要文字
+$uni-extra-color: #c7c7c7 !default;			// 辅助说明
+
+// 边框颜色
+$uni-border-1: #F0F0F0 !default;
+$uni-border-2: #EDEDED !default;
+$uni-border-3: #DCDCDC !default;
+$uni-border-4: #B9B9B9 !default;
+
+// 常规色
+$uni-black: #000000 !default;
+$uni-white: #ffffff !default;
+$uni-transparent: rgba($color: #000000, $alpha: 0) !default;
+
+// 背景色
+$uni-bg-color: #f7f7f7 !default;
+
+/* 水平间距 */
+$uni-spacing-sm: 8px !default;
+$uni-spacing-base: 15px !default;
+$uni-spacing-lg: 30px !default;
+
+// 阴影
+$uni-shadow-sm:0 0 5px rgba($color: #d8d8d8, $alpha: 0.5) !default;
+$uni-shadow-base:0 1px 8px 1px rgba($color: #a5a5a5, $alpha: 0.2) !default;
+$uni-shadow-lg:0px 1px 10px 2px rgba($color: #a5a4a4, $alpha: 0.5) !default;
+
+// 蒙版
+$uni-mask: rgba($color: #000000, $alpha: 0.4) !default;

+ 19 - 0
uni_modules/uni-scss/styles/tools/functions.scss

@@ -0,0 +1,19 @@
+// 合并 map
+@function map-deep-merge($parent-map, $child-map){
+	$result: $parent-map;
+	@each $key, $child in $child-map {
+		$parent-has-key: map-has-key($result, $key);
+		$parent-value: map-get($result, $key);
+		$parent-type: type-of($parent-value);
+		$child-type: type-of($child);
+		$parent-is-map: $parent-type == map;
+		$child-is-map: $child-type == map;
+			
+		@if (not $parent-has-key) or ($parent-type != $child-type) or (not ($parent-is-map and $child-is-map)){
+			$result: map-merge($result, ( $key: $child ));
+		}@else {
+			$result: map-merge($result, ( $key: map-deep-merge($parent-value, $child) ));
+		}
+	}
+	@return $result;
+};

+ 31 - 0
uni_modules/uni-scss/theme.scss

@@ -0,0 +1,31 @@
+// 间距基础倍数
+$uni-space-root: 2;
+// 边框半径默认值
+$uni-radius-root:5px;
+// 主色
+$uni-primary: #2979ff;
+// 辅助色
+$uni-success: #4cd964;
+// 警告色
+$uni-warning: #f0ad4e;
+// 错误色
+$uni-error: #dd524d;
+// 描述色
+$uni-info: #909399;
+// 中性色
+$uni-main-color: #303133;
+$uni-base-color: #606266;
+$uni-secondary-color: #909399;
+$uni-extra-color: #C0C4CC;
+// 背景色
+$uni-bg-color: #f5f5f5;
+// 边框颜色
+$uni-border-1: #DCDFE6;
+$uni-border-2: #E4E7ED;
+$uni-border-3: #EBEEF5;
+$uni-border-4: #F2F6FC;
+
+// 常规色
+$uni-black: #000000;
+$uni-white: #ffffff;
+$uni-transparent: rgba($color: #000000, $alpha: 0);

+ 62 - 0
uni_modules/uni-scss/variables.scss

@@ -0,0 +1,62 @@
+@import './styles/setting/_variables.scss';
+// 间距基础倍数
+$uni-space-root: 2;
+// 边框半径默认值
+$uni-radius-root:5px;
+
+// 主色
+$uni-primary: #2979ff;
+$uni-primary-disable:mix(#fff,$uni-primary,50%);
+$uni-primary-light: mix(#fff,$uni-primary,80%);
+
+// 辅助色
+// 除了主色外的场景色,需要在不同的场景中使用(例如危险色表示危险的操作)。
+$uni-success: #18bc37;
+$uni-success-disable:mix(#fff,$uni-success,50%);
+$uni-success-light: mix(#fff,$uni-success,80%);
+
+$uni-warning: #f3a73f;
+$uni-warning-disable:mix(#fff,$uni-warning,50%);
+$uni-warning-light: mix(#fff,$uni-warning,80%);
+
+$uni-error: #e43d33;
+$uni-error-disable:mix(#fff,$uni-error,50%);
+$uni-error-light: mix(#fff,$uni-error,80%);
+
+$uni-info: #8f939c;
+$uni-info-disable:mix(#fff,$uni-info,50%);
+$uni-info-light: mix(#fff,$uni-info,80%);
+
+// 中性色
+// 中性色用于文本、背景和边框颜色。通过运用不同的中性色,来表现层次结构。
+$uni-main-color: #3a3a3a; 			// 主要文字
+$uni-base-color: #6a6a6a;			// 常规文字
+$uni-secondary-color: #909399;	// 次要文字
+$uni-extra-color: #c7c7c7;			// 辅助说明
+
+// 边框颜色
+$uni-border-1: #F0F0F0;
+$uni-border-2: #EDEDED;
+$uni-border-3: #DCDCDC;
+$uni-border-4: #B9B9B9;
+
+// 常规色
+$uni-black: #000000;
+$uni-white: #ffffff;
+$uni-transparent: rgba($color: #000000, $alpha: 0);
+
+// 背景色
+$uni-bg-color: #f7f7f7;
+
+/* 水平间距 */
+$uni-spacing-sm: 8px;
+$uni-spacing-base: 15px;
+$uni-spacing-lg: 30px;
+
+// 阴影
+$uni-shadow-sm:0 0 5px rgba($color: #d8d8d8, $alpha: 0.5);
+$uni-shadow-base:0 1px 8px 1px rgba($color: #a5a5a5, $alpha: 0.2);
+$uni-shadow-lg:0px 1px 10px 2px rgba($color: #a5a4a4, $alpha: 0.5);
+
+// 蒙版
+$uni-mask: rgba($color: #000000, $alpha: 0.4);