零基礎學習微信小程序開發之調試

之前開源的微信小程序有人用的時候遇到問題,總是問為什么不能顯示,又或者說沒有報錯呀。然后,感覺就無從下手了,不知道應該怎么辦了。其實遇到這種情況的,很多情況下都是程序小白,剛接觸微信小程序的新手,甚至有可能是連程序開發都是剛接觸的。于是,我這個菜鳥渣渣就來分享比較快速查找原因的調試方法。

如何通過 API 查看數據是否輸出正常呢?我這里以 Chrome 瀏覽器為例,因為要裝瀏覽器插件,其他的瀏覽器不知道有沒有這個插件。沒有的話,建議你們換用 Chrome 瀏覽器來查看。

首先,在 Chrome 瀏覽器安裝擴展插件,也就是擴展程序。這個插件名是 JSONView 。如下圖

為什么要安裝這個擴展呢?因為微信小程序使用的是 JSON 數據格式,如果不安裝這個擴展就會看一堆字符串,根本沒有辦法清晰的了解數據輸出。

以下通過訪問 WordPress REST API :https://www.xxx.com/wp-json/wp/v2/posts 查看數據,如下圖

安裝擴展并啟用之后,如下圖

如此一對比,你就可以清晰的知道 API 的數據輸出情況。可以清晰的了解到數據輸出的格式,哪些地方有數據,哪些地方沒有數據。不僅有利于調試,而且還有助于開發的時候,清晰的知道所調用的數據是數組還是對象(有些編程語言里稱為字典)。那么,你就很容易知道為什么小程序里的數據會不顯示或不正常了。

通常出現的問題是:

1). 訪問 WordPress REST API 時出現 404 。

這種情況要不就是被主題或者是插件屏蔽了 REST API 的輸出,要不就是偽靜態沒有設置。所以,首先檢查偽靜態有沒有設置成功。注意,服務器支持偽靜態的話,URL 是不存在 index.php 的,不支持偽靜態,采用的 PHP 偽靜態,那么 URL 就會有 index.php 作為目錄形式存在。所以,如果出現了 index.php 的話,那么,你所訪問的 REST API 都要加上 index.php ,即 https://www.xxx.com/index.php/wp-json/wp/v2/posts 才有可能會出現數據。

如果偽靜態是正確且正常的,那么,更換主題為 WordPress 自帶的默認主題進行測試,有些主題作者認為 REST API 沒有必要,就會在主題函數中加了屏蔽 REST 代碼,如果你不清楚怎么修改,先更換主題試試。

如果以上兩步都正確的情況下,還是無法正常獲取,那么,你就需要嘗試把其他插件都停止激活,有可能是插件有沖突,導致 API 有誤。

如果以上的步驟都嘗試了,還是不能正常獲取,那么,就很有可能插件的 API 本身就有問題,即存在 Bug ,這個可以問問插件開發者。

2). 訪問 WordPress REST API 時一切正常,但是開發工具里查看不到數據。

通常出現這種情況,很大可能就是開發工具里的數據請求方式有問題。這個時間,可以通過 console.log(); 這種方式打印數據,查看開發工具里的數據請求是否能正能常獲取數據了。

小程序源代碼里,通常無法獲取數據,或者不能正常展示,又沒有報錯的情況,都會用 consol.log(res); 查看請求返回的數據。一般調試正常后,就會刪除會注釋掉了這個 console.log(res); (注意:res 指的是請求返回的變量)

下面就以獲取文章列表請求為例

上面的這種請求代碼,在開發工具里看不到任何提示。假如,我們加上 console.log(response); 可以看看開發工具里有沒有提示。

開發工具就有如下提示了

展開的數據方式如下

這是正常的情況,那么,假如不正常呢?那就檢查代碼吧,這里沒有辦法一一講解了。

好了,以上就是零基礎學習微信小程序開發之調試分享。今天中午也抽了個時間,又更新了一下開源版的插件,主要是優化性能,減少 SQL 查詢命令,刪除不必要的查詢函數,盡量采用 WordPress 原生自帶的函數獲取數據。可優化的地方還有的,但是,主要時間還在制作新的 API 上面。

相關推薦

發表評論

微信掃一掃

微信掃一掃

微信掃一掃,分享到朋友圈

零基礎學習微信小程序開發之調試
返回頂部

顯示

忘記密碼?

顯示

顯示

獲取驗證碼

Close
七星彩走势图500