1. 程式人生 > 其它 >Vue+jQuery+axios練習小案例【隨機獲取笑話】

Vue+jQuery+axios練習小案例【隨機獲取笑話】

技術標籤:前端學習版塊vuejqueryaxios非同步訪問htmlcss

文章目錄

一、效果演示

在這裡插入圖片描述

二、完整程式碼

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <
title
>
Document</title> <!-- 引入vue.js和axios.js和jquery.js --> <script src="https://unpkg.com/axios/dist/axios.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script> <script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"
>
</script> <style> input { height: 30px; line-height: 30px; } #inputDiv { text-align: center; } #jbtn { line-height: 30px; } p { width: 100%; padding: 5px; }
</style> </head> <body> <div id="jokeDiv"> <div id="inputDiv"> <input type="text" placeholder="請輸入要獲取的笑話數量" id="jcount" v-model="jcount"> <input type="button" value="獲取隨機笑話" @click="getJokes" id="jbtn"> </div> <br>笑話內容: <hr> <p v-for="joke in jokes">{{joke}}</p> </div> </body> <script> /* get請求方式: 格式1: axios.get(地址?key=value&key2=value2).then(function(response){},function(error){}); 格式2: axios.get(地址,{params:{key1:value1...}}).then(function(response){},function(error){}); */ /* 介面1:隨機笑話 請求地址:https://autumnfish.cn/api/joke/list 請求方法:get 請求引數:num(笑話條數,數字) 響應內容:隨機笑話 */ new Vue({ el: "#jokeDiv", data: { jcount: 1, jokes: [], }, methods: { getJokes: function () { var t = this; //將物件先記錄下來 重要 //傳送axios非同步請求 axios.get("https://autumnfish.cn/api/joke/list", { params: { "num": this.jcount } }).then( function (response) { t.jokes = response.data.jokes; //修改該vue物件的資料 }, function (error) { }) } }, updated() { //記憶體中的資料和頁面上的資料一致時,將所有p標籤的背景色修改 var colors = ['#FFCCCC', '#FFFF99', '#FFCC99', '#CCFF99', '#CCCCCC', '#FFFFCC', '#CCCCFF', '#99CCFF']; var $plist = $("p") //console.log($plist) //jquery的物件方法遍歷 $plist.each(function(index,element){ var randomIndex = parseInt(Math.random() * colors.length); console.log(element) $(element).css("background-color", colors[randomIndex]) }) } }) </script> </html>

三、相關說明

  • jquery中遍歷時不能使用for of語法,因為jquery3才開始支援for of