微信小程序判断是否包含某字符串

微信小程序判断是否包含某字符串,第1张

var string =  " ABC DEF GHI ";

if(string.indexOf("ABC")>=0){

  console.log('包含此字符串')

}

string.indexOf("ABC"):返回大于等于0的整数值则表示包含此字符串,若不包含则返回-1。

 strObj.indexOf(subString[, startIndex])

JavaScript中indexOf函数方法返回一个整数值,指出 String 对象内子字符串的开始位置。如果没有找到子字符串, 则返回 -1。

如果 startindex 是负数,则 startindex 被当作零。如果它比最大的字符位置索引还大,则它被当作最大的可能索引。 

参数: 

strObj : 必选项,String 对象或文字。 

subString :必选项,要在 String 对象中查找的子字符串。 

starIndex :可选项,该整数值指出在 String 对象内开始查找的索引。如果省略,则从字符串的开始处查找;

如果 startindex 是负数,则 startindex 被当作零。如果它比最大的字符位置索引还大,则它被当作最大的可能索引。 

 lastIndexOf() 方法则是从字符串的结尾开始检索子串。

支付宝程序和微信小程序的区别理清的话,把支付宝小程序和微信小程序进行相互转换,其实很简单

wxml:

把项目里axml后缀名的文件改成wxml,把acss后缀名的文件改成wxss,页面里如果有axml也要改成wxml,acss改成wxss

onTap改成bindtap,其他事件名也要从支付宝小程序的驼峰命名法改成微信小程序的单词之间的普通拼接

<input></input>改成<input/>

a:for改成wx:for

a:if改成wx:if

a:else改成wx:else

把show-count={{show_count}}改成把show-count="{{show_count}}"

我发现微信小程序用<text>会有很多bug,所以支付宝小程序里如果用了<text>,如果需要转成微信小程序,就用<view>并给<view>加上浮动或者给<view>设置display:inline-block来代替<text>,我目前发现的<text>的bug有:<text>有一个padding-top,而且控制台看不到。

支付宝小程序里可以用a:for="{{doc_item.datestr.split(',')}}",微信小程序里不支持wx:for="{{doc_item.datestr.split(',')}}",所以,为了兼容支付宝小程序和微信小程序2个端,在支付宝小程序里也不要用a:for="{{doc_item.datestr.split(',')}}",可以在js里就对list进行修改:for(let i = 0,len = list.lengthi <leni++){ list[i].datestr = list[i].datestr.split(',')}

js:

蓝牙:

错误提示:error.errorMessage改成error.errMsg

"pullrefresh":"true"改成"enablePullDownRefresh": true,下拉刷新页面时如果需要调用某个函数,在onPullDownRefresh里写

{{item.visitdate.substring(5, 7)}}这种语法在支付宝小程序里支持,在微信小程序里不支持,在list里加1个参数,来表示{{item.visitdate.substring(5, 7)}}

wx.uploadFile({fileName})改成wx.uploadFile({name})

wx.uploadFile返回的路径从res.apFilePaths[0]改成res.tempFilePaths[0]

my.showToast({content})改成wx.my.showToast({title})

my改成wx

my.setStorageSync({

  key: 'currentCity',

  data: {}

})

改成

wx.setStorageSync(

'currentCity', account_id

)

异步设置缓存,异步获取缓存,同步设置缓存,同步获取缓存,都要改掉,但是我平时都是用异步的

把e.target改成e.currentTarget

支付宝小程序里执行

that.setData({

            type : undefined

        })

不会报错,但是在微信小程序里会报错,所以,如果在微信小程序里要避免出现这种情况

模态框:

my.confirm改成wx.showModal

my.confirm里的属性:

content改成title

confirmButtonText改成confirmText

cancelButtonText改成cancelText

支付宝小程序里,因为my.showLoading以后经常隐藏不了loading,所以在支付宝小程序里很少用到my.showLoading,微信小程序里可以用wx.showLoading

app.json:

navigationBarTitleText改成defaultTitle

"pullRefresh": true改成"enablePullDownRefresh":true

acss:

支付宝小程序给button设置display:block是有效的,但是微信小程序的button有一个默认样式button[size=mini]{display:inline-block},所以微信小程序里要给button的display、line-height、font-size、padding增加权重,比如给微信小程序里的button增加[size=mini]等


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/11708000.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-18
下一篇2023-05-18

发表评论

登录后才能评论

评论列表(0条)

    保存