在學習AJAX時關於JSON有一些疑問總結

來源:互聯網
上載者:User

標籤:

營運在日常的工作中可能會寫很多指令碼來完成特定的一些功能,比如營運A寫個版本發布的代碼,裡面會有檔案推送的邏輯,營運B想實現一個遠程指令碼執行的功能,可能在他的代碼裡也有檔案推送的邏輯。在沒有引入原子化設計的概念下,營運人員用各自的方式來實現檔案推送這塊的邏輯。

當然,我們封裝一個組件不可能直接去使用這個tpl。而是提供一個外部組件函數,然後傳遞參數到這個組件函數中,組件函數不僅渲染頁面(即插入組件dom),還處理相關的邏輯。如上面的rightsideBar.js就是為外部提供一個組件函數。rightsideBar組件比較簡單,只需要傳遞一個父節點即可,不需要其他外部資料來做處理。部分

getUserInfo函數,顧名思義就是擷取登入使用者資訊,相當於此函數提供了擷取使用者資訊的介面,其他頁面不調用自然不會執行。其他頁面通過getApp().getUserInfo(function(userinfo){console.log(userinfo);})這種方式調用該方法,擷取使用者資訊。

getUserInfo:function(cb){//參數為cb,類型為函數    var that = this    if(this.globalData.userInfo){//使用者資訊不為空白      typeof cb == "function" && cb(this.globalData.userInfo)//如果參數cb的類型為函數,那麼執行cb,擷取使用者資訊;    }else{//如果使用者資訊為空白,也就是說第一次調用getUserInfo,會調用使用者登入介面。      wx.login({        success: function () {          wx.getUserInfo({            success: function (res) {         console.log(res)              that.globalData.userInfo = res.userInfo//把使用者資訊賦給globalData,如果再次調用getUserInfo函數的時候,不需要調用登入介面              typeof cb == "function" && cb(that.globalData.userInfo)//如果參數cb類型為函數,執行cb,擷取使用者資訊            }          })        }      })    }  }

廢話不多說,直接分析前端代碼。個人觀點,難免有疏漏,僅供參考。

先看入口app.js,app(obj)註冊一個小程式。接受一個 object 參數,其指定小程式的生命週期函數等。其他檔案可以通過全域方法getApp()擷取app執行個體,進而直接調用它的屬性或方法,例如(getApp().globalData) http://www.cnblogs.com/koetgw/  

任何對象要訪問這個類只能通過這個執行個體對象來訪問,我們把房子比喻一個java類,每個房子只有一把鑰匙(好比每個類只有一個執行個體),這樣唯有房子的主人才有這個鑰匙才能訪問房子,其他人訪問不了。 http://www.cnblogs.com/mseruq/  

data:data代表的是這個$http()對象中包含了將會被當作訊息體發送給伺服器的資料。通常在發送POST請求時使用。

  根據這次項目,筆者認為:如果 不需要 通過 傳參 向伺服器擷取資料的時候,就不需要data這個鍵;如果 需要 通過傳參向伺服器擷取資料,就需要data這個鍵。

既然我們已經分析完畢,接下來我們解決WebAPi啟動Https的問題即可。開始想到去申請的一個免費的認證就行,但是由於是將WebAPi安裝在本地Windows服務中且ip不固定,所以免費的認證則不再可取,只能自行建立認證來解決這個問題。但是我對於認證幾乎從未接觸過,一無所知,不知從哪裡下手,這一漫長的過程就從此開始。

JSON可以用Javascript內建的方法直接進行解析,從而轉換成Javascript也非常方便 http://www.cnblogs.com/mseruj/  

我先想到可以在dragstart事件處理常式中把被拖拽的元素儲存在一個變數裡,然後再drop的事件處理常式訪問它。但是很遺憾,並不能訪問到。

 

在學習AJAX時關於JSON有一些疑問總結

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.