uview-plus组件库全面升级更新,订单结算判断支付方式是否可用代码调整,公众号关注二维码修改

This commit is contained in:
2025-10-21 10:44:31 +08:00
parent 5d98b7efc2
commit 5f3a307fec
395 changed files with 31264 additions and 2477 deletions

View File

@@ -35,24 +35,14 @@
</template>
<script>
// #ifdef APP-NVUE
// nvue通过weex的dom模块引入字体相关文档地址如下
// https://weex.apache.org/zh/docs/modules/dom.html#addrule
const fontUrl = 'https://at.alicdn.com/t/font_2225171_8kdcwk4po24.ttf'
const domModule = weex.requireModule('dom')
domModule.addRule('fontFace', {
'fontFamily': "uicon-iconfont",
'src': `url('${fontUrl}')`
})
// #endif
// 引入图标名称已经对应的unicode
import icons from './icons'
import icons from './icons';
import { props } from './props';
import config from '../../libs/config/config';
import { mpMixin } from '../../libs/mixin/mpMixin';
import { mixin } from '../../libs/mixin/mixin';
import { addUnit, addStyle } from '../../libs/function/index';
import config from '../../libs/config/config';
import fontUtil from './util';
/**
* icon 图标
* @description 基于字体的图标集,包含了大多数常见场景的图标。
@@ -82,18 +72,12 @@
export default {
name: 'u-icon',
beforeCreate() {
// #ifdef APP-NVUE
if (this.customFontFamily) {
domModule.addRule('fontFace', {
'fontFamily': `${this.customPrefix}-${this.customFontFamily}`,
'src': `url('${this.customFontUrl}')`
})
if (!fontUtil.params.loaded) {
fontUtil.loadFont();
}
// #endif
},
data() {
return {
}
},
emits: ['click'],
@@ -102,7 +86,7 @@
uClasses() {
let classes = []
classes.push(this.customPrefix + '-' + this.name)
// uView的自定义图标类名为u-iconfont
// uview-plus内置图标类名为u-iconfont
if (this.customPrefix == 'uicon') {
classes.push('u-iconfont')
} else {
@@ -127,6 +111,9 @@
// 某些特殊情况需要设置一个到顶部的距离,才能更好的垂直居中
top: addUnit(this.top)
}
if (this.customPrefix !== 'uicon') {
style.fontFamily = this.customPrefix
}
// 非主题色值时,才当作颜色值
if (this.color && !config.type.includes(this.color)) style.color = this.color
@@ -147,7 +134,7 @@
icon() {
// 使用自定义图标的时候页面上会把name属性也展示出来所以在这里处理一下
if (this.customPrefix !== "uicon") {
return this.customIcons[this.customPrefix + '-' + this.name] || this.name;
return config.customIcons[this.name] || this.name;
}
// 如果内置的图标中找不到对应的图标就直接返回name值因为用户可能传入的是unicode代码
return icons['uicon-' + this.name] || this.name
@@ -166,8 +153,6 @@
</script>
<style lang="scss" scoped>
@import "../../libs/css/components.scss";
// 变量定义
$u-icon-primary: $u-primary !default;
$u-icon-success: $u-success !default;
@@ -176,13 +161,12 @@
$u-icon-error: $u-error !default;
$u-icon-label-line-height:1 !default;
/* #ifndef APP-NVUE */
// 非nvue下加载字体
/* #ifdef APP || MP-QQ || MP-TOUTIAO || MP-BAIDU || MP-KUAISHOU || MP-XHS */
// 2025/04/09在App/微信/支付宝/鸿蒙元服务已改用uni.loadFontFace加载字体
@font-face {
font-family: 'uicon-iconfont';
src: url('https://at.alicdn.com/t/font_2225171_8kdcwk4po24.ttf') format('truetype');
}
/* #endif */
.u-icon {

View File

@@ -0,0 +1,68 @@
import config from '../../libs/config/config';
let params = {
loaded: false
};
// 加载字体方法
const loadFont = () => {
// console.log('加载字体图标');
// 全局加载不稳定默认关闭需要开启可以配置loadFontOnce。
if (config.loadFontOnce) {
params.loaded = true;
}
// #ifdef APP-NVUE
// nvue通过weex的dom模块引入字体相关文档地址如下
// https://weex.apache.org/zh/docs/modules/dom.html#addrule
const domModule = weex.requireModule('dom');
domModule.addRule('fontFace', {
'fontFamily': "uicon-iconfont",
'src': `url('${config.iconUrl}')`
});
if (config.customIcon.family) {
domModule.addRule('fontFace', {
'fontFamily': config.customIcon.family,
'src': `url('${config.customIcon.url}')`
});
}
// #endif
// #ifdef APP || H5 || MP-WEIXIN || MP-ALIPAY
uni.loadFontFace({
global: true, // 是否全局生效。微信小程序 '2.10.0'起支持全局生效,需在 app.vue 中调用。
family: 'uicon-iconfont',
source: 'url("' + config.iconUrl + '")',
success() {
// console.log('内置字体图标加载成功');
},
fail() {
// console.error('内置字体图标加载出错');
}
});
if (config.customIcon.family) {
uni.loadFontFace({
global: true, // 是否全局生效。微信小程序 '2.10.0'起支持全局生效,需在 app.vue 中调用。
family: config.customIcon.family,
source: 'url("' + config.customIcon.url + '")',
success() {
// console.log('扩展字体图标加载成功');
},
fail() {
// console.error('扩展字体图标加载出错');
}
});
}
// #endif
// #ifdef APP-NVUE
// if (this.customFontFamily) {
// domModule.addRule('fontFace', {
// 'fontFamily': `${this.customPrefix}-${this.customFontFamily}`,
// 'src': `url('${this.customFontUrl}')`
// })
// }
// #endif
return true;
};
export default {
params: params,
loadFont
}