欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

微信小程序?qū)崿F(xiàn)IP歸屬地獲取功能

 更新時(shí)間:2022年09月16日 10:09:12   作者:小碼code  
在日常開發(fā)中,后端主要提供數(shù)據(jù)以及處理業(yè)務(wù)邏輯,前端主要提供頁面布局以及數(shù)據(jù)展示。本文主要介紹如何實(shí)現(xiàn)一個(gè)簡(jiǎn)單獲取IP歸屬地的小程序,感興趣的可以了解一下

在日常開發(fā)中,后端主要提供數(shù)據(jù)以及處理業(yè)務(wù)邏輯,前端主要提供頁面布局以及數(shù)據(jù)展示。后端程序員對(duì)于頁面布局接觸比較少,但是小程序有完善的文檔說明、頁面布局也相對(duì)簡(jiǎn)單,實(shí)現(xiàn)起來相對(duì)簡(jiǎn)單一些。而且小程序相對(duì)于安卓或者IOS審核機(jī)制也相對(duì)簡(jiǎn)單一些。本文介紹如何實(shí)現(xiàn)一個(gè)簡(jiǎn)單獲取IP歸屬地的小程序。

效果展示

頁面主要有兩個(gè)功能:

  • 顯示當(dāng)前IP地址和歸屬地。
  • 根據(jù)查詢條件顯示歸屬地。

頁面布局從上往下分成三部分:

  • 第一部分為文字說明,介紹頁面功能。
  • 第二部分顯示當(dāng)前IP地址。
  • 第三部分顯示查詢的地址結(jié)果。

實(shí)現(xiàn)步驟

將三個(gè)布局從上往下,從上往下依次編寫,并配置樣式和布局詳解。

頂部展示(第一部分)

實(shí)現(xiàn)效果:

設(shè)置一個(gè)藍(lán)色布局,設(shè)置藍(lán)色背景,寬度為100%,高度為330rpx。

<view style="height: 100%;width: 100%;">
  <view style="width: 100%;height: 330rpx;background-color: #6e74dd">
  </view>
</view>

展示效果:

2、 里面分成兩個(gè)布局,左邊顯示文字,右邊顯示一個(gè)小圖標(biāo)。

  • 首先設(shè)置布局左浮動(dòng),float:left
  • 左邊文字字體設(shè)置成白色,文字調(diào)整大小和邊距。
  • 右邊調(diào)整邊距和大小。

詳情代碼:

# xwml
<view class="ip_intro left_float">
  <view style="font-size:x-large">IP地址歸屬地</view>
  <view style="padding-top: 3%;">一鍵查詢 快速方便</view>
</view>
<view class="left_float intro_icon">
  <image style="width: 80px;height: 80px;"  src="/images/ip_search.png" mode="heightFix"></image>
</view>
# wxss
.left_float {
  float: left;
}

.ip_intro {
  padding-left: 5%;
  padding-top: 10%;
  color: white;
}

.intro_icon {
  padding-left: 25%;
  margin-top: 8%;
}

效果展示:

中間展示(第二部分)

實(shí)現(xiàn)效果:

  • 首先view設(shè)置寬度90%,高度自適應(yīng),背景調(diào)整成白色。整體往上移動(dòng),部分覆蓋在第一部分藍(lán)色背景上。
  • 左側(cè)設(shè)置view設(shè)置導(dǎo)航條,設(shè)置上下寬,左右窄的布局。
  • 右側(cè)調(diào)整邊距和顯示自提大小。
  • 請(qǐng)求IP歸屬地信息,請(qǐng)求地址www.jeremy7.cn/springboot-schedule/holiday/ip-address。

詳情代碼:

# wxml
<view class="clean_float local_div">
    <view class="left_float">
      <view class="local_bar"></view>
    </view>
    <view class="left_float local_text">
      <view>當(dāng)前IP地址:{{localIp}}</view>
      <view style="margin-top: 12rpx;">歸屬地:{{localAddress}}</view>
    </view>
</view>
# wxss
.clean_float {
  clear:both;
}

.local_div {
  width: 90%;
  height: 130rpx; 
  margin: 0 auto;
  background-color: #ffffff;
  margin-top: -10%;
  border-radius: 10px;
}

.local_bar {
  margin-left: 30rpx;
  margin-top: 50rpx;
  border-radius: 2px; 
  width: 8rpx;
  height: 50rpx;
  background-color: #6e74dd;
}

.local_text {
  font-size: small;
  margin-left: 25rpx;
  margin-top: 35rpx;  
}
# js
data: {
   localIp: "---",
   localAddress: "---" 
}
  
var that =  this;
wx.request({
  url:  "htts://www.jeremy7.cn/springboot-schedule/holiday/ip-address",
  success (res){
    var data = res.data;
    that.setData({
      localAddress:data.address,
      localIp:data.ip
    })
  }
})

效果展示:

尾部部分(第三部分)

實(shí)現(xiàn)效果:

尾部部分是IP歸屬地的查詢,根據(jù)用戶輸入的IP查詢歸屬地。

  • 整個(gè)最大的view寬度90%,背景設(shè)置成白色,調(diào)整高度和圓角。
  • 最上面設(shè)置文字說明,設(shè)置邊距和字體大小。
  • 中間輸入框,設(shè)置文字居中,需要將行高和高度設(shè)置成相同的高度height: 78rpx; line-height:78rpx;。
  • 按查詢按鈕調(diào)整間距,高度以及圓角。
  • 請(qǐng)求IP歸屬地信息,請(qǐng)求地址www.jeremy7.cn/springboot-schedule/holiday/ip-address,傳入查詢的IP。

詳情代碼如下:

# wxml
<view class="ip_find">
   <view class="ip_find_text">IP歸屬地查詢</view>
   <view>
    <input class="ip_input" type="text" bindinput="changeIp"/>
   </view>
   <view class="ip_find_btn">
      <view bindtap="findAddress">查詢</view>
   </view>
   <view class="result_div" wx:if="{{showResult}}">
      <view class="left_float">
        <view class="local_bar"></view>
      </view>
      <view class="left_float local_text">
        <view>當(dāng)前IP地址:{{resultIp}}</view>
        <view style="margin-top: 12rpx;">歸屬地:{{resultAddress}}</view>
      </view>
    </view>
</view>

 

# wxss
.ip_find {
  width: 90%;
  height: 700rpx; 
  margin: 0 auto;
  background-color: #ffffff;
  margin-top: 20px;
  border-radius: 10px;
}

.ip_input {
  height: 78rpx; 
  background-color: #F5F5F5;
  width: 90%;
  margin: 30rpx auto;
  border-radius: 24px;
  text-align: center;
  line-height:78rpx;
}

.ip_find_text {
  padding-top: 28px;
  padding-left: 20px;
  font-weight: bolder;
}

.ip_find_btn {
  height: 78rpx; 
  background-color: #6e74dd;
  width: 90%;
  margin: 0 auto;
  border-radius: 24px;
  text-align: center;
  line-height:78rpx;
}
# js
findAddress() {
  var that =  this;
  var searchIp = this.data.searchIp;
  console.log(searchIp);
  var valid = that.isValidIP(searchIp);
  if(!valid) {
    wx.showToast({
      title: "請(qǐng)?zhí)顚懻_ IP",
      icon: 'none',
      duration: 2000
    })
    return;
  }
  that.searchAddress(searchIp);
},
searchAddress(searchIp) {
  var that =  this;
  wx.request({
    url: "htts://www.jeremy7.cn/springboot-schedule/holiday/ip-address",
    data: {
       ip:searchIp
    },
    success (res){
      var data = res.data;
      var data = res.data;
      that.setData({
        resultAddress:data.address,
        resultIp:data.ip,
        showResult:true
      })

    }
  })
},

// 驗(yàn)證 IP 規(guī)格合法
isValidIP(ip) {
  var reg = /^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/;
  return reg.test(ip);
}, 

changeIp: function (e){
  this.setData({
    searchIp: e.detail.value
  })
},
  • changeIp每次輸入數(shù)據(jù)實(shí)時(shí)傳遞給searchIp變量。
  • isValidIP驗(yàn)證IP的合法性。
  • 結(jié)果展示使用showResult判斷,查詢成功后showResult 改成true,使用wx:if顯示結(jié)果數(shù)據(jù)。 效果展示:

總結(jié)

從上、中、下三個(gè)部分分別講解頁面的布局。

整體布局主要是需要設(shè)置寬度,一般設(shè)置成90%的寬度,高度自適應(yīng)。

視圖之間的布局主要調(diào)整邊距、修改大小。

文字上下居中需要設(shè)置heightline-height改成一致。

整體布局需要顏色統(tǒng)一,看起來簡(jiǎn)潔、大方。

后端程序?qū)η岸瞬皇煜?,但是多多練?xí)一些標(biāo)簽的使用,上手還是很快的。

小程序展示

打開微信掃一掃,查看你的IP歸屬地:

到此這篇關(guān)于微信小程序?qū)崿F(xiàn)IP歸屬地獲取功能的文章就介紹到這了,更多相關(guān)小程序IP歸屬地獲取內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論