iVX开发过程整理的常见问题与回答(二)

ivx后台服务器的出口IP是什么?
ivx后台有两个出口ip,如果需要添加第三方服务的白名单的话,需要两个都填上:52.83.157.21,52.83.192.50
web版小程序和微信原生小程序有什么区别?
web版小程序本质上是web-view,相当于原生小程序添加网页组件嵌入web应用,网页地址为web应用的测试链接,web版小程序开发需企业认证小程序、自定义域名、上传校验文件。原生小程序支持个人版小程序发布,支持原生ui的嵌入,比如微信小程序、广告组件等,首屏加载更快。web版小程序支持动效、时间轴,有更好的动画功能,更丰富的扩展组件,由于web版小程序需要通过网页组件加载远程的URL地址,初次打开小程序时,有一个额外的加载过程,而原生小程序组件的应用包,是直接上传至小程序平台,首次加载更快。
如何绑定键盘回车按键,快捷执行功能?
应用系统添加按键按下事件,keyValue下拉选择回车键值,则可以在事件中监听回车按下操作,对应添加动作实现功能。
h5如何设置跳转微信小程序?
案例中添加小程序添加按钮,按钮的小程序id属性所在位置:小程序公众平台-》设置-》基本设置-》账号信息-》原始ID,是以gh_开头的id,路径为小程序案例中页面路径属性,注意:这个跳转功能是微信jssdk提供的一个功能,依赖微信浏览器,在其他浏览器无效。
ivx如何接入接入外部系统与开发资源?
自定义函数编写js代码,添加逻辑调用函数执行代码。针对较复杂的js代码或者其他类型的代码,可使用自定义SDK,首先需要创建docker镜像,然后上传代码。添加逻辑对应引用sdk包,调用sdk中的方法,目前支持nodejs、java、python。api可设置http请求第三方的接口,服务都可设置为公共服务获取http请求路径,外部可对应设置http请求调用该服务。dbo组件可以直接连接第三方的数据库,目前支持mysql、postresql,sql server和oracle这些常见的关系型数据库,由于DBO组件的连接请求是通过ivx的后台服务器发起的,要在ivx编辑器中调试DBO组件,目标数据库需要可以通过互联网访问,并开通ivx服务器的ip白名单,52.83.157.21,52.83.192.50。
私有部署服务器资源配置应该如何选择?
云服务器(ECS、CVM等),docker(k8s),建议2核4g以上,版本Centos7及以上,MySQL5.7及以上,redis4.0及以上,对象存储阿里云OSS、腾讯云COS、亚马逊云Amazon S3、Microsoft Azure、Minio、华为云OBS,CDN(阿里云cdn、腾讯云cdn等)。
网页组件如何使用发送信息(父层向子层)?
父层应用通过网页组件嵌入子层应用,网页链接为子层案例测试链接,父层案例中设置网页发送信息,对应设置信息内容和域名,子层应用中应用系统添加接收信息事件,下拉菜单选择收到的信息和域名。
app中如何获取设备识别码?
案例中添加原生app组件,添加动作调用原始app获取设备唯一识别码,动作回调中下拉菜单获取返回结果。
app中如何自定义状态栏文本、电池、网络图标等颜色?
案例中添加原生app组件,添加动作调用原生app设置状态栏文本颜色,支持选择黑色、白色。
安卓导出如何自定义状态栏背景颜色?
案例中添加原生app组件,状态栏是否透明属性设置开启,添加行组件作为状态栏背景,前台初始化事件中添加动作调用原生app获取状态栏高度,动作回调中添加数值变量赋值为状态栏高.statusBarHeight,行组件高度属性绑定数值变量,则自定义行组件的背景颜色即可修改状态栏背景颜色。
发布window测试如何进行调试?
打开调试窗口,菜单栏-》view-》toggle developer tools,或者快捷键ctrl+shift+i,一般调试窗口中关注较多的是console和network标签页中的内容,console显示的是案例中调用console log的打印记录,即应用系统调用调试记录或者变量打印当前值,network中则是资源请求,包括api、图片资源、html、css、js文件等请求。
如何获取组件对应的dom元素进行操作?
组件设置额外元素类属性,添加自定义函数,函数中根据设置的类名编写代码获取dom,函数遵循JavaScript语法规则,比如document.querySelector(".test")则可以获取到对应dom,其中test为设置的额外元素类,编写好自定义函数则可以对应设置调用函数执行代码。
服务调用数据库提交,后台调试时日期字段传入空值提交成功,但前台打印调试记录传入变量也是空白,调用服务却返回失败invalid time string?
后台服务调试时空值实际参数值为undefined,可正常提交,而前台打印空白可能取值为空字符串"",取值非空但不符合日期字符串格式则调用服务提交会失败,日期字符串格式为yyyy-mm-dd。
导出安卓如何设置自定义回退?
案例中添加原生app组件,回退键行为设置自定义,app组件添加APP回退键事件,事件中对应设置处理,比如前台调用返回上一页可实现页面回退。
数组遍历时找到符合的某行数据如何设置跳出循环?
添加条件循环,可以加个布尔变量、数值变量,数值变量默认值为0,对应为数组的下标取某行数据进行判断,满足条件则设置布尔变量值为true,不满足数值变量加1,继续执行下一次循环处理,条件循环添加条件判断布尔变量值为false,且数值变量小于数组行数。
应用系统如何监听更多的键盘按键,keyValue下拉菜单中只给出了一些选项?
应用系统按键按下事件keyValue可以输入键盘按键对应的键值或键码,比如a、67,键盘中按键对应的键值和键码获取可以在事件中添加动作调用应用系统调试记录打印出来,实际打开浏览器预览测试按下对应的键则可以在浏览器调试窗口控制台中看到对应值。一般按f12可快捷打开浏览器调试窗口。
属性绑定时三元表达式如何设置多个嵌套判断绑定不同值?
比如变量取不同值时返回不同的颜色值,变量==0?"#00000":变量==1?"#11111":变量==2?"#22222":"#33333"。
h5中能够获取微信步数吗?
h5中不能,微信浏览器中暂时没有接口获取微信步数,原生微信小程序中支持获取微信步数。微信小程序组件调用获取微信步数,回调中获取返回的步数数据。
数据库调用删除数据返回403,失败原因为db is not allow to delete data?
数据库默认开启安全保护,用户删除权限为所有记录均不可删除,用户删除权限设置仅可删除自己提交数据,如果当前登录用户等于提交用户字段值则可以删除, 不等则不能删除,关闭安全保护,则可删除全部数据。
微信中h5如何设置按钮点击退出案例?
添加自定义函数,设置调用微信apiWeixinJSBridge.call('closeWindow'),按钮点击事件中设置调用函数。
应用系统获取访客信息数据不完整,比如缺少城市?
应用系统获取访客信息是根据网络ip地址获取的信息,ip地址没有城市返回则没有,如果想获取具体定位信息,建议使用设备接口获取当前位置经纬度,地图组件调用经纬度转详细地址。
长按事件时间只有0.35秒,如何自定义长按时间触发逻辑处理?
可以添加触发器、数值变量处理计时,比如触发器设置时间间隔为0.1s,触发器触发事件中设置数值变量赋值数值变量+0.1,加条件判断数值变量值大于某个自定义数值,则对应处理逻辑,设置触发器暂停重置。
表格容器绑定对象数组,表头字段显示顺序跟数组字段顺序不一致,应该如何解决?
可以设置自定义列,值为一维数组,数组中元素值为字段名称,对应添加字段名则可以定义表头字段显示顺序。
为何表单容器获取表单数据传入数据库按数据id更新未生效,添加调试记录打印表单数据是有值的?
表单容器获取到的表单数据是个对象变量,按数据id更新要求传入对象数组,可以加个对象数组设置添加一行数据,将获取到的表单数据添加到对象数组中,对象数组再传入做更新,或者传入[表单数据],中括号括起来对象变量可快速设置传入对象数组。
发布windows如何上传文件到本地文件夹中?
添加windows应用组件,开启上传文件至本地目录,不指定则默认文件夹名称为ivxFiles,与打包后的exe执行文件同目录下,建议为英文名称。
后台中变量会保存记录吗,比如调用服务给变量赋值后,下次再调用服务引用变量时不是赋值后的值?
后台中变量不会保存,每次调用服务都是属性面板设置的初始值,并不会保留上次调用服务赋值结果,需要保存变量的数据,添加数据提交保存。
为何网页iframe内嵌ivx案例地址后,微信浏览器中内容不显示,显示一片空白?
接口配置中微信公众号开启了微信授权,iframe内部的授权与外部的授权产生冲突,需要将关闭授权,保存配置后重新编译测试。
前台发起公众号登录和后台发起登录有什么区别?
前台调用直接发起公众号登录即可,后台发起登录时,前台需先调用应用系统获取url参数,参数名为code,获取到code值作为参数调用后台登录服务,登录服务中设置调用公众号登录,状态码传入code值,则可完成公众号登录。
测试案例时弹窗提示"后台请求过于频繁,请检查案例逻辑",应该怎么解决?
前台发起频繁发起请求,则会弹窗提示,1秒最多15个请求,检查案例中涉及后台数据库、服务等请求逻辑,可根据实际案例逻辑将相关的请求整合到服务中处理,减少前台发起请求次数。
给富文本或富文本编辑器赋值文本字符串未生效?
直接给富文本或富文本编辑器赋值字符串是无效的,富文本内容是有格式要求的,需要按照数组的格式才是有效的,比如:[{"insert":"你好\n我好\n大家好\n"}],insert代表是插入文本,\n代表的是回车换行,可以通过应用系统设置调用调试记录打印富文本内容,预览测试时打开浏览器调试窗口查看打印出来的具体值。
为何"设置返回结果并中止服务"未生效,比如数据库输出回调中设置,仍然会执行数据库输出之后的逻辑?
"设置返回结果并中止服务"只能作为最外层的方法才能起到终止服务的作用,数据库输出回调中设置,只是退出回调函数,会回到服务的主函数中继续执行后续代码。
有哪些因素会影响画布的性能?
画布的模式、宽高、预览分辨率。画布有两种模式,一种是webgl模式,这种模式更加高级,但会消耗更多的性能,同时不支持宽或高大于4096的素材(会直接变黑);canvas模式更原始,可以支持宽或高大于4096的素材,但不支持图片/中文字体作为遮罩对象,同时动画性能也会差一点。预览分辨率越高越清晰,但占用的内存也较多。如果画布面积很大,或者一个页面中有多个画布时,高分辨率可能导致应用闪退。建议找到一个画布大小与分辨率的最佳组合。
如何计算距离某个活动开始时间差?
添加两个时间变量,其中一个设置值为活动开始时间,获取时间戳秒数赋值为数值变量1,一个为当前时间,获取时间戳秒数赋值为数值变量2,数值变量1减数值变量2求出相差秒数,根据单位换算关系分别计算天数、时分秒。
如何嵌入写好的html代码?
添加网页组件设置html代码属性,或者可以添加自定义函数,案例中添加个行,设置额外元素类test,函数中遵循JavaScript语法规则,根据类名test获取行的dom元素,设置innerHTML为html代码内容。
如何设置输出筛选条件,有值则参与筛选,没有值则不参与筛选?
私有数据库设置筛选条件加||'$any',输入'$any'默认自动展示为任意筛选值,比如数据库输出时根据输入框内容做筛选,有输入内容则输出满足条件的,没有则输出全部,则筛选条件设置字段名=输入框内容||'$any'。
为何调用数据库更新数据,并没有符号筛选条件的数据却返回更新成功?
数据库更新请求完成,正常返回就代表更新成功了,并不一定更新了数据,更新失败一般是后台网络导致的更新请求没有完成才会触发失败,因此,不能仅通过是否更新成功判断数据更新,需要通过更新结果.更新条数判断,条数大于0则表示有数据被更新,等于0则没有数据被更新。
对象组筛选输出时字母如何设置不分大小写?
对象数组结构定义时,添加字段类型为文本(不分大小写),则设置筛选输出时可实现忽略大小写。
数据库调用输出时筛选条件如何添加括号设置组合,比如a且(b或c)?
输出动作暂不支持添加括号,需将括号展开,编辑器中表现为a且b或a且c,或者调用执行自定义sql语句设置输出。
富文本编辑器能够展示html代码吗?
事件中添加动作调用富文本编辑器转换原始html至富文本,回调中下拉菜单可以获取返回结果.转换值,再添加动作将转换值赋值给富文本组件则可以显示。
属性绑定时如何设置多个条件判断?
按照JavaScript语法规则,且为&&,或为||,比如a>0&&a<5||a>10,对应满足条件的为a大于0小于5或者a>10。
数据库如何输出字段为空的数据?
可以先去掉筛选条件设置输出,根据调试结果看具体值对应设置筛选条件,字段为空一般取值null、'',比如文本类型没操作过的值为null,如果之前有值,手动删除内容后保存更新值为'',则数据库输出设置筛选条件等于null或等于''可输出为空的数据。
条件判断不支持括号,比如a且(b或c),实际对应编辑器要拆成a且b或a且c?
可以添加条件且,前面条件设置a==1&&(b==1||c==1),条件判断选择等于,条件值输入true。
数据库中json字段值为对象数组,如何更新数组中的某一行值?
无法直接调用更新动作实现更新,首先需要输出赋值给对象数组,对象数组赋值输出结果.对象数组.某个值(行号:0,列名:'json字段名'),对象数组设置某个值设置行号、列名、值对应更新一行的值,然后再调用数据库更新到数据库中,json字段赋值对象数组。
组应用中如何共用数据库?
组内应用中选中后台新建组应用数据库,其他组内应用中按以下操作步骤添加:选中后台-》后台资源-》数据库-》对应的组应用数据库,添加后可以选中数据库,查看dbid属性值来确定是不是要添加的数据库。
如何获取对象数组的表头?
添加对象数组2赋值对象数组1.预设列名,结构为对象数组,参考:[{"title":"Header1","type":"string"},{"title":"Header2","type":"string"}],预设列名为对象数组属性面板定义的结构,另外对象数组1.当前列名对应的是数组实际值的表头结构。
后台服务内数据库输出等请求动作是如何执行的?
后台服务内的动作是一个接着一个执行,即同步的,包括api,数据库请求等。比如数据库输出回调执行后再执行输出动作后同级的动作。
如何筛选输出当前月份的数据?
添加时间变量1命名为开始时间,赋值(年/月/日/时/分/秒),年设置开始时间.当前值.年,月为开始时间.当前值.月,日为1,时分秒均为0,则可以得到当前月份首日时间。添加时间变量2命名为结束时间,赋值(年月日/时分秒),年月日设置开始时间.下个月.年月日,时分秒设置'00:00:00',则可以得到下个月首日时间。数据库输出筛选条件设置创建时间日期大于等于开始时间.年月日,且创建时间小于结束时间.年月日,则可输出当前月份的数据。
如何通过管理后台给在线用户发送消息?
连接组件可进行在线发送消息,用户端前台添加连接组件,每个连接都对应唯一的sid,管理端后台添加前端资源找到对应的连接组件添加,则可以共用一个连接进行通信。
如何能够连接ivx外部的连接(socket)?
前台添加连接组件,打开使用外部地址,可设置外部地址属性,注意:预览链接默认为https协议,外部地址需使用wss协议。则可以在事件中添加动作发起自定义连接,发送自定义连接消息。
如何获取用户上次登录的时间?
用户数据库添加个时间类型字段做记录,
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值