From f26f29d84e0a68831a6af14dab3eec5500496d2e Mon Sep 17 00:00:00 2001 From: spring <2396852758@qq.com> Date: 星期三, 28 五月 2025 16:48:52 +0800 Subject: [PATCH] 初始化项目 --- uview-ui/index.js | 141 +++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 141 insertions(+), 0 deletions(-) diff --git a/uview-ui/index.js b/uview-ui/index.js new file mode 100644 index 0000000..d38a3bf --- /dev/null +++ b/uview-ui/index.js @@ -0,0 +1,141 @@ +// 寮曞叆鍏ㄥ眬mixin +import mixin from './libs/mixin/mixin.js' +// 寮曞叆鍏充簬鏄惁mixin闆嗘垚灏忕▼搴忓垎浜殑閰嶇疆 +// import wxshare from './libs/mixin/mpShare.js' +// 鍏ㄥ眬鎸傝浇寮曞叆http鐩稿叧璇锋眰鎷︽埅鎻掍欢 +import http from './libs/request' + +function wranning(str) { + // 寮�鍙戠幆澧冭繘琛屼俊鎭緭鍑�,涓昏鏄竴浜涙姤閿欎俊鎭� + // 杩欎釜鐜鐨勬潵鐢辨槸鍦ㄧ▼搴忕紪鍐欐椂鍊�,鐐瑰嚮hx缂栬緫鍣ㄨ繍琛岃皟璇曚唬鐮佺殑鏃跺��,璇﹁: + // https://uniapp.dcloud.io/frame?id=%e5%bc%80%e5%8f%91%e7%8e%af%e5%a2%83%e5%92%8c%e7%94%9f%e4%ba%a7%e7%8e%af%e5%a2%83 + if (process.env.NODE_ENV === 'development') { + console.warn(str) + } +} + +// 灏濊瘯鍒ゆ柇鍦ㄦ牴鐩綍鐨�/store涓槸鍚︽湁$u.mixin.js锛屾鏂囦欢uView榛樿涓洪渶瑕佹寕鍦ㄥ埌鍏ㄥ眬鐨剉uex鐨剆tate鍙橀噺 +// HX2.6.11鐗堟湰,鏀惧埌try涓�,鎺у埗鍙颁緷鐒朵細璀﹀憡,鏆傛椂涓嶇敤姝ゆ柟寮忥紝 +// let vuexStore = {}; +// try { +// vuexStore = require("@/store/$u.mixin.js"); +// } catch (e) { +// //TODO handle the exception +// } + +// post绫诲瀷瀵硅薄鍙傛暟杞负get绫诲瀷url鍙傛暟 +import queryParams from './libs/function/queryParams.js' +// 璺敱灏佽 +import route from './libs/function/route.js' +// 鏃堕棿鏍煎紡鍖� +import timeFormat from './libs/function/timeFormat.js' +// 鏃堕棿鎴虫牸寮忓寲,杩斿洖澶氫箙涔嬪墠 +import timeFrom from './libs/function/timeFrom.js' +// 棰滆壊娓愬彉鐩稿叧,colorGradient-棰滆壊娓愬彉,hexToRgb-鍗佸叚杩涘埗棰滆壊杞瑀gb棰滆壊,rgbToHex-rgb杞崄鍏繘鍒� +import colorGradient from './libs/function/colorGradient.js' +// 鐢熸垚鍏ㄥ眬鍞竴guid瀛楃涓� +import guid from './libs/function/guid.js' +// 涓婚鐩稿叧棰滆壊,info|success|warning|primary|default|error,姝ら鑹插凡鍦╱view.scss涓畾涔�,浣嗘槸涓簀s涓篃鑳戒娇鐢�,鏁呬篃瀹氫箟涓�浠� +import color from './libs/function/color.js' +// 鏍规嵁type鑾峰彇鍥炬爣鍚嶇О +import type2icon from './libs/function/type2icon.js' +// 鎵撲贡鏁扮粍鐨勯『搴� +import randomArray from './libs/function/randomArray.js' +// 瀵硅薄鍜屾暟缁勭殑娣卞害鍏嬮殕 +import deepClone from './libs/function/deepClone.js' +// 瀵硅薄娣卞害鎷疯礉 +import deepMerge from './libs/function/deepMerge.js' +// 娣诲姞鍗曚綅 +import addUnit from './libs/function/addUnit.js' + +// 瑙勫垯妫�楠� +import test from './libs/function/test.js' +// 闅忔満鏁� +import random from './libs/function/random.js' +// 鍘婚櫎绌烘牸 +import trim from './libs/function/trim.js' +// toast鎻愮ず锛屽uni.showToast鐨勫皝瑁� +import toast from './libs/function/toast.js' +// 鑾峰彇鐖剁粍浠跺弬鏁� +import getParent from './libs/function/getParent.js' +// 鑾峰彇鏁翠釜鐖剁粍浠� +import $parent from './libs/function/$parent.js' +// 鑾峰彇sys()鍜宱s()宸ュ叿鏂规硶 +// 鑾峰彇璁惧淇℃伅锛屾寕杞藉埌$u鐨剆ys()(system鐨勭缉鍐�)灞炴�т腑锛� +// 鍚屾椂鎶婂畨鍗撳拰ios骞冲彴鐨勫悕绉�"ios"鍜�"android"鎸傚埌$u.os()涓紝鏂逛究鍙栫敤 +import {sys, os} from './libs/function/sys.js' +// 闃叉姈鏂规硶 +import debounce from './libs/function/debounce.js' +// 鑺傛祦鏂规硶 +import throttle from './libs/function/throttle.js' + + +// 閰嶇疆淇℃伅 +import config from './libs/config/config.js' +// 鍚勪釜闇�瑕乫ixed鐨勫湴鏂圭殑z-index閰嶇疆鏂囦欢 +import zIndex from './libs/config/zIndex.js' + +const $u = { + queryParams: queryParams, + route: route, + timeFormat: timeFormat, + date: timeFormat, // 鍙﹀悕date + timeFrom, + colorGradient: colorGradient.colorGradient, + colorToRgba: colorGradient.colorToRgba, + guid, + color, + sys, + os, + type2icon, + randomArray, + wranning, + get: http.get, + post: http.post, + put: http.put, + 'delete': http.delete, + hexToRgb: colorGradient.hexToRgb, + rgbToHex: colorGradient.rgbToHex, + test, + random, + deepClone, + deepMerge, + getParent, + $parent, + addUnit, + trim, + type: ['primary', 'success', 'error', 'warning', 'info'], + http, + toast, + config, // uView閰嶇疆淇℃伅鐩稿叧锛屾瘮濡傜増鏈彿 + zIndex, + debounce, + throttle, +} + +// $u鎸傝浇鍒皍ni瀵硅薄涓� +uni.$u = $u + +const install = Vue => { + Vue.mixin(mixin) + if (Vue.prototype.openShare) { + Vue.mixin(mpShare); + } + // Vue.mixin(vuexStore); + // 鏃堕棿鏍煎紡鍖栵紝鍚屾椂涓や釜鍚嶇О锛宒ate鍜宼imeFormat + Vue.filter('timeFormat', (timestamp, format) => { + return timeFormat(timestamp, format) + }) + Vue.filter('date', (timestamp, format) => { + return timeFormat(timestamp, format) + }) + // 灏嗗涔呬互鍓嶇殑鏂规硶锛屾敞鍏ュ埌鍏ㄥ眬杩囨护鍣� + Vue.filter('timeFrom', (timestamp, format) => { + return timeFrom(timestamp, format) + }) + Vue.prototype.$u = $u +} + +export default { + install +} \ No newline at end of file -- Gitblit v1.9.3