Angular4 微信的坑


1、不要重置對象的引用!(重置只應該在組件或服務的初始化時)

     why:會使頁面產生閃爍

2、不要給圖片綁定一個空的值或空的圖片引用(如果值從服務器異步過來,那應該在初始化時給它一個默認值)

  why:會觸發一個404的請求 (如:img src=http://xxxx/null)

3、頁面全部使用最新的angular2寫法,on-click=>(click) bind-src=>[src] bind-html=>[innerHtml]

     why:可能有兼容性問題

4、寫在subscribe中的代碼,有些會跑出angular的作用域,導致界面沒有刷新數據(實際上后台代碼都正常執行過了)

     why:不知道

     解決:在subscribe中的函數里,this使用別名,如:

let that = this;
this.wxsdk.getLocatioObserverble().subscribe((siteInfro) => {
   that.activity.province = province.replace("省", "").replace("市", "");
   that.activity.city = city.replace("市", "");
   that.isGetLocation = true;
...
5、angular2的route,在ios中表現和安卓不同
   微信在config-SDK的時候,始終報出配置錯誤!所有的config使用的仍然是單頁面的url(即index頁面)
 
6、微信分享自定義內容時,鏈接必須是自己的,否則設置分享無效(折磨我好久)

 

 
 
別人總結的,摘過來,以后再看:

1.同一套程序,andriod分享正常,ios分享報簽名不正確,主要原因是微信的ios和安卓處理方式不一樣,ios不會刷新當前的頁面地址,使用的是history的記錄地址,所以每次分享出來的鏈接,都是第一個進入系統頁面的鏈接,當跳轉到子頁面的時候,系統就會識別打開的url和簽名的url不一致導致簽名不正確

解決辦法:如果是單頁面,很好處理,直接在index頁面獲取一下根目錄的簽名,然后調試一下簽名是否正確,如果是正確,那么所有頁面都可以自定義分享功能了,實測有效

2.由於單頁面的hash模式會自帶#號,但是分享的時候會將#號后面的參數變成無效,導致想傳參數都傳不過去,可以做一個頁面沒有#號的,然后統一帶參數分享到這個頁面然后再重定向到指定的vue頁面

 
 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM