uni 公共方法

在根目录下新建一个 放公共方法的文件 commonFun

 然后建 js 文件

function code(code) {
	if(code==-2){
		uni.showToast({
			title:'请重新登录',
			icon:'none',
			mask:true
		})
		setTimeout(()=>{
			uni.reLaunch({
				url:'/pages/login/login'
			})
		},2000)
	}
}


export default{
	code
}

然后在需要 引用的页面

import code from '../../commonFun/code.js'

    
// 调用方法的时候
 code.code(res.data.code)

 

### 关于uni-app的方法列表及用法 #### 一、基础配置与初始化 uni-app基于Vue语法构建,因此其大部分API遵循Vue的标准。对于项目创建和基本设置,在开始一个新的uni-app项目时,需安装HBuilderX IDE并利用内置模板快速搭建环境[^1]。 #### 二、页面生命周期函数 类似于微信小程序,uni-app也定义了一套完整的页面生命周期回调机制,允许开发者在不同阶段执行特定逻辑: - `onLoad`:当页面加载完成时触发; - `onShow`:每次打开页面都会被调用; - `onReady`:仅首次渲染完成后调用一次; - `onHide`:当前页面隐藏时触发; - `onUnload`:离开页面销毁前触发; 这些钩子可以用来处理数据预取、状态保存等功能。 #### 三、网络请求接口 为了简化HTTP通信过程,uni-app封装了一个轻量级的Ajax库——$http(),它支持GET/POST等多种方式发送异步请求,并返回Promise对象以便链式操作: ```javascript // 发送GET请求 uni.request({ url: 'https://example.com/api/data', method: 'GET', success(res){ console.log('成功:', res.data); }, fail(err){ console.error('失败:', err); } }); ``` 此部分功能适用于任何需要同服务器交互的应用场景。 #### 四、UI组件库集成 除了官方提供的标准控件外,还可以通过引入第三方插件来增强用户体验。比如实现获取验证码后的倒计时效果,可以通过自定义定时器配合button按钮的状态切换轻松达成目标[^2]: ```html <template> <view class="container"> <!-- 验证码输入框 --> <input type="text" v-model="code"/> <!-- 获取验证码按钮 --> <button @click="getCode()" :disabled="isCounting">{{ buttonText }}</button> </view> </template> <script> export default { data(){ return{ code:'', // 用户填写的验证码 isCounting:false, // 是否正在倒数中 countDownTime:60, // 倒数时间长度(秒) timer:null // 定时器ID }; }, methods:{ getCode(){ this.isCounting=true; let that=this; function startTimer(){ if(that.countDownTime<=0){ clearInterval(that.timer); that.buttonText='重新发送'; that.isCounting=false; that.countDownTime=60; }else{ that.buttonText=`${that.countDownTime}s`; that.countDownTime--; } } this.buttonText=`${this.countDownTime}s`; this.timer=setInterval(startTimer,1000); } } } </script> ``` 上述代码片段展示了如何结合业务需求设计实用的功能模块。 #### 五、原生能力扩展 针对某些特殊场合下可能涉及到的操作系统底层特性访问(如摄像头权限申请),则可通过JNI桥接技术让JS层能够间接调用Android系统的native API。具体做法是在Java侧暴露公共静态方法供外部调用,而在前端这边借助plus.android.importClass()动态加载所需类文件实例化后即可正常工作[^3]。 ```java public class MyNativeHelper extends JSBridgeBase { public static void doSomething(Context context) throws Exception { // 实现具体的本地逻辑... } } // 对应js端调用形式如下所示: var main = plus.android.runtimeMainActivity(); var helper = eval("new " + plus.android.importClass("com.example.MyNativeHelper")); helper.doSomething(main); ``` 以上就是有关uni-app常见方法及其应用场景的一些说明。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值