About 杨 昌伟

该作者尚未填入任何详情
So far 杨 昌伟 has created 43 blog entries.

.w文件中通过js引用图片不显示

问题描述: 在.w文件中通过js动态引用图片不显示,在这里我们用一个实例代码来说明:下面是一段错误代码 var myIcon = new BMap.Icon("logo.png", new BMap.Size(40, 40)) 错误原因:"logo.png" 路径使用错误,所以图片无法显示。 解决方法: 在js中动态引用资源时,需要使用require.toUrl进行处理,例如 var myIcon = new BMap.Icon("logo.png", new BMap.Size(40, 40)) 改成 var myIcon = new BMap.Icon(require.toUrl("./logo.png"), new BMap.Size(40, [...]

跨域请求时cookie无法提交的问题

问题描述: 跨域请教报错:JUSTEP:230109。 在一个大型架构里,静态和动态资源肯定要分开的(为了让静态资源做CDN缓存),动态和静态域名也会不一样。很多情况下都会在静态页面里通过ajax异步提交到动态页面上去。那么就会产生跨域的问题。 文档里介绍了CORS等跨域方法,确实是可行的,但是遇到个问题,只能无状态,也就是不能传输session和cookie。这样也产生问题了,不可能不做状态和权限检查?这个问题也有个解决办法,就是在ajax请求的时候设置允许传输cookie的参数: "xhrFields": { withCredentials: true }, "crossDomain": true, 服务器端也做下允许接受的参数。 我在其他框架里测试通过,但是在wex5里,发现请求带上了cookie,服务器端返回也通过,可是wex5却报了个错,后测试直接加这个参数运行也会报错,是怎么回事? 问题原因: 在请求带cookie的时候,Access-Control-Allow-Origin是不能设置为*的,必须指定授权URL 解决方法: 在请求带cookie的时候,Access-Control-Allow-Origin是不能设置为*的,必须指定授权URL;客户端把SESSION ID存储到COOKIE里,然后将ID提交到服务端验证,服务器端要允许跨域

list中checkbox的bind-disable问题

问题描述: 设置一个list,list里放了一个checkbox,checkbox的bind-disable中有写 $model.data.val("isAdd")=='Y' 页面出来后导致所有list全部禁用. 问题原因: 只一类问题在论坛中出现的数量比较多 主要是分不清val(“uerName”)和$model.data.val("iuerName")的区别。 在list中, val(‘userName’) 表示取所在行的userName字段的值; $model.data.val("iuerName") 表示取当前行userName字段的值 解决方法: 在某一行设置属性,需要获取到当前行,也就是 val(“userName”) .

windowReceiver问题

问题描述: windowReceiver 组件是不是官方以后逐渐不用了? 解决方法: windowReceiver组件只做兼容性保留,后续版本建议使用model组件上的onParamsReceive 事件来接收参数。 新版本页面交互,请参考:http://doc.wex5.com/page-interaction/

bottom的visible属性

问题描述 bottom的visible属性设置成false,但是依然可见,这是怎么回事呢? 怎么通过JS修改display,控制隐藏和显示问题 问题原因 bottom的 visible 是因为那个属性被其他属性覆盖了,所以CSS样式没有正常显示,一般在浏览器自带的开发者工具审查元素,便可以得知具体情况。 解决方法 隐藏方式 可以选择下面的 bind-visible 属性 ,把这个属性改成false 使用jQuery。可以使用hide()和show()方法实现某一元素隐藏和显示。

baasdata 与data 区别

问题描述: baasData组件与 data组件的区别 解决方法: data组件和baasData组件是两种不同类型的数据组件,baasData可以直接关联用baas中定义的action;data组件不行,必须自己接管data的相关事件进行加载和保存数据(或者调用data的相关api加载数据)。

修改了.w\js\css后运行还是之前效果的,没有运行修改后的,怎么办

问题描述(question): 修改了.w\js\css后运行还是之前效果的,没有运行修改后的,怎么办 问题原因: 用“启动BeX5运行平台.bat”或者到tomcat\bin下用startup.bat启动tomcat,运行找的是生成的缓存文件,修改了文件后要重新生成缓存才可以 解决方法: 方案一:找到.w对应的.cache和.release删除,并删除浏览器的缓存 方案二:修改UI2下自己应用的conf\ application.xml 中的版本号,然后重启tomcat服务 方案三:修改model同级的conf\server.xml文件中的version版本号,然后重启tomcat服务 具体的缓存机制可以参考http://doc.wex5.com/?p=5503其中UIServer\WEB-INF\justep.xml中的version在BeX5V3.3及其之后的版本中是在model同级的conf\server.xml中配置的

在studio中启动tomcat长时间后访问提示“server is executed more than 16 hours”

问题描述(question): 在studio中启动tomcat长时间后访问提示“server is executed more than 16 hours” 处理方法: 解决方法: 开发版在studio中启动服务,只能运行16个小时,如果要做部署可以对开发版进行注册用免费版,或者联系起步相关的商务人员下载推广版或者企业版