非同步 在前端的做法不斷的在進行優化調整,先前介紹過Promise 可以解決 ... 執行順序方法。 async/await 則讓非同步有了同步的寫法,因此許多原有的JS ... ... <看更多>
「javascript非同步寫法」的推薦目錄:
- 關於javascript非同步寫法 在 [問題] JavaScript 的非同步物件導向寫法- 看板Ajax 的評價
- 關於javascript非同步寫法 在 Async function / Await 深度介紹 - 卡斯伯Blog 的評價
- 關於javascript非同步寫法 在 討論串(共2篇) - [問題] JavaScript 的非同步物件導向寫法 的評價
- 關於javascript非同步寫法 在 image map的jquery寫法 - 前端工程師板 | Dcard 的評價
- 關於javascript非同步寫法 在 jQuery UI 呼叫父層函式的寫法 的評價
- 關於javascript非同步寫法 在 黑暗執行緒- JavaScript 的async、await 讓非同步程式寫法有了 ... 的評價
- 關於javascript非同步寫法 在 [問題] .Net Core MVC 的非同步寫法sdtt PTT批踢踢實業坊 的評價
javascript非同步寫法 在 討論串(共2篇) - [問題] JavaScript 的非同步物件導向寫法 的推薦與評價
原本的程式實在是太亂了. 引用JS檔前還要先指定一個Global Variable. 結果現在出問題了要同時處理多筆資料. 打算全部砍掉重練用OOP來寫. 不過現在遇到了一個問題. ... <看更多>
javascript非同步寫法 在 image map的jquery寫法 - 前端工程師板 | Dcard 的推薦與評價
這是我之前發的文, 但最近幾天回頭看才發現已有好心人提供了寫法, 我也在原文回覆了, 在此先感謝那幾位的幫忙(鞠躬),這幾天我找到了用jquery ... ... <看更多>
javascript非同步寫法 在 jQuery UI 呼叫父層函式的寫法 的推薦與評價
jQuery UI 呼叫父層函式的寫法. GitHub Gist: instantly share code, notes, and snippets. ... <看更多>
javascript非同步寫法 在 黑暗執行緒- JavaScript 的async、await 讓非同步程式寫法有了 ... 的推薦與評價
JavaScript 的async、await 讓非同步程式寫法有了革命性改變,只可惜它限制ES7 平台,對還要支援IE 的前端攻城獅猶如寫在地上的生猛海鮮… ... <看更多>
javascript非同步寫法 在 [問題] .Net Core MVC 的非同步寫法sdtt PTT批踢踢實業坊 的推薦與評價
Net Core MVC 的非同步寫法. 作者: sdtt (大拙) 2021-10-27 ... 後者的話基本上要在前端用JS算我猜關鍵字:core async controller更正,後者的話要在client端用JS算. ... <看更多>
javascript非同步寫法 在 [問題] JavaScript 的非同步物件導向寫法- 看板Ajax 的推薦與評價
原本的程式實在是太亂了
引用JS檔前還要先指定一個Global Variable
結果現在出問題了 要同時處理多筆資料
打算全部砍掉重練 用OOP來寫
不過現在遇到了一個問題
因為這個Object 有利用AJAX 去取得一些資料
所以並不能隨call隨用 還要指定一個callback function
因為要考慮到錯誤處理的方式 和 UI 的動態顯示
所以可能需要兩個callback function
一個是用來存資料 一個是用來更新UI
(我想把這js和網頁頁面完全獨立開來,因此不能包在一起)
但是不知道各位前輩有什麼方法比較好去實做呢?
--
I'm not the only one,
To crash into the sun, and live to fight another day.
Like a super nova, that old life is over.
I'm here to stay. Now I'm gonna be,
Invincible.
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.113.244.14
感謝!! 今天又學到新東西了
deffered!!!!!!!!!
感動~~ 雖然還是沒解決
等等有空把全部的思路全部打上來
我現在遇到了一個問題
大概如下
<myscript.js>
function MyOJ(param)
{
this.predata = param
this.dataA = null // 等待ajax 取得資料
this.dataB = null //
}
MyOJ.prototype =
{
init: function()
{
this.getDataA()
}
getDataA: function()
{
return $.post(urlB,this.getDataB.bind(this))
},
getDataB: function(dataA) //ajax A的回傳資料
{
this.dataA = dataA
return $.post(urlC,this.initFinish.bind(this))
},
initFinish: function(dataB) //ajax B的回傳資料
{
var dtd = $.Deferred()
this.dataB = dataB
dtd.resolve()
return dtd
}
}
<MyHTML.html>
<script>
var a = new MyOJ(params)
a.getDataA().done( getA_Callback) //回報UI用
.fail( getA_Fail )
a.getDataB().done( getB_Callback) //回報UI用
.fail( getB_Fail)
a.initFinish.done( myInitFinish ) //模組已全部載入 可以使用了
a.init()
function myInitFinish()
{
$('#dataA').text(a.dataA) //保證有資料
$('#dataB').text(a.dataB) //保證有資料
}
</script>
意思就是
當程式呼叫 init 時, js 那邊開始進入取得資料的模式
同時我可以在外部掛載一些function 能讓UI知道下載的進度
不過紅字部分出了問題
因為Deferred物件要在執行後才會return
但是,我現在還沒init
而且這些function, 應該是給ajax完成後在內部才執行的(同時函數內參數就是回傳值)
雖然這段程式碼有嚴重錯誤
但是應該可以表現出我想要達到的效果了~~
麻煩各位大大指點迷津QQ...
※ 編輯: Fonger 來自: 61.230.168.152 (11/17 08:59)
※ 編輯: Fonger 來自: 61.230.168.152 (11/17 09:00)
... <看更多>