weex目录写java代码放在哪里_WeexDemo

1、JS页面之间的正向传值:

navigator.push({

url:util.pushUrl + 'car/myindent/MyIndentInfo.js',

animated:true,

data:{

orderid:item.orderid,

userflag:self.params.userflag,

user:self.params.user,

sign:self.params.sign

}

},event=>{

});

说明:这里的参数名key值只能是data,里面的值可以无限加。

2、获取值(原生调起JS也是这样获取参数):

var data = weex.config.data;

3、JS页面之间的逆向传值:A跳转到B

①先在A页面注册一下接口,用来接收回调

//获取当前页面为唯一ID值

UtilModule.getInstanceId(function(result){

if(null != result)

{

const id = result.id;

//注册全局事件

const globalEvent = weex.requireModule('globalEvent');

//添加返回注册事件,该名字是固定的

globalEvent.addEventListener("longriseWeexBack", function (e) {

//判断该返回事件是否是当前页面发出的,这个判断一定要加,因为是全局事件,不然其他页面的关闭会影响这里

if(e != null)

{

if(id == e.id)

{

var param = e.data;//获取pop过来的参数

if(null != param && param != undefined)

{

modal.toast({ message: 'username:' + e.data.username, duration: 1 });

}

}

}

});

//注册其他全局事件,类似Android的广播和IOS的通知,根据方法名字来区分

globalEvent.addEventListener("testEvent", function (e) {

modal.toast({ message: 'testEvent', duration: 1 });

});

}

});

②B页面关闭时发起回调事件:

//============关闭页面,并传参数==========

navigator.pop({

animated: "true",

data:{

username:'程三',

password:123456

}

}, event => {

});

//=============发送全局消息=============

//定义JSON对象

var jsonObj = {};

jsonObj.name='程三';

UtilModule.sendGlobalMessage("testEvent",jsonObj)

4、JS页面调用原生的可以通过module来调用传值。

5、WEEX开发请导入阿里控件库,地址:https://alibaba.github.io/weex-ui/#/cn/

6、定义全局类:

const pushUrl='http://192.168.31.100:8081/dist/';//接口请求地址

const serverUrl="https://qcda.96520.com/restservices/";

const appgetversion="lcipzjapprest";

const imageUrl='https://gitee.com/longrise/CarImage/raw/master/image/';//图片地址

export default{

//暴露变量

serverUrl,

imageUrl,

pushUrl,

appgetversion

}

使用:1、导入:import util from '../../util' 这的点表示层级,从顶层开始算起。 2、使用详见接口请求示例。

7、接口请求:

var jsonObj = {};

jsonObj.company='';

jsonObj.userflag=params.userflag;

jsonObj.pagesize=self.pagesize;

jsonObj.pagenum=self.currentnum;

jsonObj.user=params.user;

jsonObj.sign=params.sign;

UtilModule.log("longrise",JSON.stringify(jsonObj));

//参数:url地址/接口名/json字符串参数/回调方法,返回json字符串的接口

UtilModule.okhttp(util.serverUrl,util.appgetversion+"/appcarsearchappointment",JSON.stringify(jsonObj),function(result){

//json字符串转JSON对象

var tempData = JSON.parse(result);

});

8、请求接口和初始化一些参数都可以在created方法中执行,如:

created:function(){

self=this;

self.carSrc = util.imageUrl+"car_car_iconx.png";

self.timeSrc = util.imageUrl+"car_time_icon.png";

self.params = data;

this.request(self.params);

//modal.toast({ message: "userId:"+data.userId, duration: 1 })

}

9、weex图片的存放,图片下载蓝湖中web类型的@2X类型,开发取尺寸时选择像素px,不要选择Android或者IOS。下载图片后可是放在一个文件件里面和工程一起提交到git中,然后图片就有地址了,如:

created:function(){

self=this;

//util.imageUrl为固定值,上线后图片放置到后台服务器,这里修改成服务器地址即可。

self.carSrc = util.imageUrl+"car_car_iconx.png";

self.timeSrc = util.imageUrl+"car_time_icon.png";

self.params = data;

this.request(self.params);

//modal.toast({ message: "userId:"+data.userId, duration: 1 })

}

10、标签下只能有一个div标签,在这个div标签下面在加多个控件,有点类似Android的scrollView

11、不支持slot。

12、图片动态赋值:src里面是对应的图片地址变量

简写:

13、WEEX里面有作用域概念,所以需要定义一个全局的this变量来调用变量和方法,如:

①定义全局变量:var self;

②在onCreate方法中赋值:

created:function(){

self=this;

},

14、6、JSON字符串转对象:

var obj = str.parseJSON(); //由JSON字符串转换为JSON对象

或者

var obj = JSON.parse(str); //由JSON字符串转换为JSON对象

15、7、拼接JSON字符串:

var jsonObj = {};

jsonObj.userflag=params.userflag;

jsonObj.pagesize=10;

jsonObj.pagenum=1;

jsonObj.user=params.user;

jsonObj.sign=params.sign;

//转成字符串

JSON.stringify(jsonObj)

16、JS文件配置远程和本地地址:

远程:const pushUrl='http://192.168.1.121:8081/dist/';//远程跳转地址

本地:const pushUrl='dist/';//本地跳转地址

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值