国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

目錄
什麼是GraphQl?
介紹GraphIQL
更改變量
使用資源管理器
過濾數(shù)據(jù)
結(jié)論
JavaScript API參考狀態(tài)
頂級字段
普通字段
首頁 web前端 css教學(xué) 使用JavaScript API練習(xí)GraphQl查詢

使用JavaScript API練習(xí)GraphQl查詢

Apr 12, 2025 am 11:33 AM

使用JavaScript API練習(xí)GraphQl查詢

學(xué)習(xí)如何構(gòu)建GraphQL API可能具有挑戰(zhàn)性。但是您可以學(xué)習(xí)如何在10分鐘內(nèi)使用GraphQL API!碰巧的是,我擁有完美的API:JavaScript GraphQl API的全新,新鮮的VS代碼狀態(tài)。

JavaScript調(diào)查狀態(tài)是對JavaScript景觀的年度調(diào)查。我們已經(jīng)做了四年了,最近版的開發(fā)人員超過20,000。

我們一直依靠蓋茨比建立我們的展示網(wǎng)站,但是直到今年,我們一直以一種通過某種僅僅是凡人稱為“ Elasticsearch”的奧術(shù)魔術(shù)而生成的靜態(tài)YAML文件的形式,以靜態(tài)的YAML文件的形式提供給Gatsby。

但是,由於蓋茨比(Gatsby)大便將其作為GraphQl所食用的所有數(shù)據(jù)源排出,但我們不妨跳過中間人並直接將其饋送為GraphQl!是的,我知道,這個隱喻在第二次越來越大,我已經(jīng)後悔了。我的意思是:我們?yōu)閿?shù)據(jù)構(gòu)建了內(nèi)部GraphQL API,現(xiàn)在我們可以向所有人提供它,以便您也可以輕鬆利用數(shù)據(jù)集!

“但是等等,”你說。 “我一生都在研究刀片,這讓我沒有時間學(xué)習(xí)GraphQl!”不用擔(dān)心:這就是本文的出現(xiàn)。

什麼是GraphQl?

GraphQl的核心是一種語法,可讓您指定要從API接收的數(shù)據(jù)。請注意,我說的是API ,而不是數(shù)據(jù)庫。與SQL不同,GraphQl查詢不是直接轉(zhuǎn)到數(shù)據(jù)庫,而是轉(zhuǎn)到您的GraphQl API端點,該端點可以連接到數(shù)據(jù)庫或任何其他數(shù)據(jù)源。

GraphQl比REST(如REST)的最大優(yōu)勢在於,它可以讓您要求您想要什麼。例如:

詢問 {
  用戶(id:“ foo123”){
  姓名
 }
}

將為您提供具有單個名稱字段的用戶對象。還需要電子郵件嗎?只是做:

詢問 {
 用戶(id:“ foo123”){
  姓名
  電子郵件
 }
}

如您所見,此示例中的用戶字段支持ID參數(shù)?,F(xiàn)在,我們來到GraphQl的最酷功能,嵌套:

詢問 {
 用戶(id:“ foo123”){
  姓名
  電子郵件
    帖子{ 
      標(biāo)題
      身體
    }
  }
}

在這裡,我們說我們想找到用戶的帖子,並加載其標(biāo)題和身體。關(guān)於GraphQl的好處是,我們的API層可以完成如何以特定格式獲取該額外信息的工作,因為我們不是直接與數(shù)據(jù)庫交談,即使它沒有以嵌套格式存儲在我們的實際數(shù)據(jù)庫中。

塞巴斯蒂安·斯科爾(Sebastian Scholl)的出色工作在解釋graphql時,就好像您是在雞尾酒攪拌機上第一次見面一樣。

介紹GraphIQL

GraphIQL(注意其中的“ i”)是那裡最常見的GraphQl IDE,它是我們將用於探索JavaScript API狀態(tài)的工具。您可以立即在graphiql.stateofjs.com上啟動它,並且它將自動連接到我們的端點(即api.stateofjs.com/graphql)。 UI由三個主要要素組成:探險家面板,查詢構(gòu)建器和結(jié)果面板。稍後,我們將其添加到其中,但現(xiàn)在讓我們保持簡單。

Explorer選項卡是由OneGraph開發(fā)和維護的渦輪增壓版本的一部分。非常感謝他們幫助我們整合它。如果要部署自己的graphiql實例,請務(wù)必查看他們的示例存儲庫。

不用擔(dān)心,我不會讓您編寫任何代碼。取而代之的是,讓我們從現(xiàn)有的GraphQl查詢開始,例如與過去四年相對應(yīng)的React的開發(fā)人員體驗的查詢。

還記得我說我們在內(nèi)部使用GraphQl來構(gòu)建我們的網(wǎng)站嗎?我們不僅要公開API,而且還可以自己揭露查詢。單擊小“導(dǎo)出”按鈕,在“ GraphQl”選項卡中復(fù)制查詢,將其粘貼到Graphiql的查詢構(gòu)建器窗口中,然後單擊“播放”按鈕。

如果一切都按計劃進行,則應(yīng)看到您的數(shù)據(jù)出現(xiàn)在結(jié)果面板中。讓我們花點時間分析查詢。

查詢React_experienceQuery {
  調(diào)查(調(diào)查:JS){
    工具(id:react){
      ID
      實體 {
        首頁
        姓名
        github {
          URL
        }
      }
      經(jīng)驗 {
        Allyears {
          年
          全部的
          完成{
            數(shù)數(shù)
            百分比
          }
          意識感興趣{
            意識
            興趣
            滿意
          }
          水桶{
            ID
            數(shù)數(shù)
            百分比
          }
        }
      }
    }
  }
}

首先是查詢關(guān)鍵字,該關(guān)鍵字定義了我們的GraphQl查詢的開始以及查詢的名稱react_experienceQuery。查詢名稱在GraphQL中是可選的,但對於調(diào)試目的可能很有用。

然後,我們進行了第一個領(lǐng)域的調(diào)查,該領(lǐng)域進行了調(diào)查論點。 (我們也有一個CSS調(diào)查狀態(tài),因此我們需要指定有關(guān)調(diào)查的調(diào)查。)然後,我們有一個工具字段,該工具字段採用ID參數(shù)。之後的所有內(nèi)容都與該特定工具的API結(jié)果有關(guān)。實體為您提供有關(guān)所選特定工具(例如React)的信息,而經(jīng)驗包含實際的統(tǒng)計數(shù)據(jù)。

現(xiàn)在,我將教您一個小技巧:命令單擊(或控制單擊)GraphIQL中的任何一個字段,而是會啟動Docs面板。恭喜,您剛剛目睹了GraphQl的另一個技巧,即自我證明!您可以將文檔直接寫入API定義,而GraphIQL將依次將其用於最終用戶。

更改變量

讓我們進行一些調(diào)整:在查詢構(gòu)建器中,用“ vuejs”替換“ react”,您應(yīng)該注意到另一個很酷的GraphQl Thing:Auto-Completion。這對於避免犯錯或節(jié)省時間非常有幫助!再次按“ Play”,您將獲得相同的數(shù)據(jù),但是這次為VUE。

使用資源管理器

現(xiàn)在,我們將再解鎖一個GraphQl電源工具:Explorer。資源管理器基本上是整個API的樹,不僅可以使您可視化其結(jié)構(gòu),而且還可以在不編寫一行代碼的情況下構(gòu)建查詢!因此,讓我們嘗試使用Explorer這次重新創(chuàng)建React查詢。

首先,讓我們打開一個新的瀏覽器選項卡,並在其中加載graphiql.stateofjs.com以開始新鮮。單擊Explorer中的調(diào)查節(jié)點,在其下方的工具節(jié)點下,單擊“播放”。該工具的ID字段應(yīng)自動添加到結(jié)果中,順便說一句,這是將默認(rèn)參數(shù)值(“ typeScript”)更改為“ React”的好時機。

接下來,讓我們繼續(xù)鑽探。如果您添加沒有任何子字段的實體,則應(yīng)該在其下面看到一條小彎曲的紅線,讓您知道您還需要指定至少一個或多個子場。因此,讓我們至少添加ID,名稱和主頁。另一個有用的技巧:您可以自動告訴GraphIQL通過將其控制在Explorer中鍵入選項,以添加所有字段的子字段。

接下來是經(jīng)驗。繼續(xù)添加字段和子字段,直到您獲得最初從JavaScript網(wǎng)站複製的查詢的內(nèi)容。您選擇的任何項目都會立即反映在查詢構(gòu)建器面板內(nèi)。在那裡,您剛剛寫了第一個GraphQl查詢!

過濾數(shù)據(jù)

您可能已經(jīng)註意到經(jīng)驗豐富的紫色過濾器項目。實際上,這是您要使用我們的GraphQL API而不是簡單地瀏覽我們的網(wǎng)站的關(guān)鍵原因:API提供的任何聚合都可以通過許多因素過濾,例如受訪者的性別,公司規(guī)模,工資,工資或國家 /地區(qū)。

擴展過濾器,然後選擇CompanySize,然後選擇EQ和Range_more_than_1000。您剛剛計算了React在大公司中的知名度!相反,選擇Range_1,您現(xiàn)在可以將其與自由職業(yè)者和獨立開發(fā)人員之間的同一數(shù)據(jù)點進行比較。

重要的是要注意,GraphQL僅定義非常低級別的原始詞,例如字段和參數(shù),因此這些等式,IN,NIN等。過濾器不是GraphQl本身的一部分,而是我們在設(shè)置API時已經(jīng)定義了自己的參數(shù)。一開始這可能是很多工作,但是它確實可以使您完全控制客戶如何查詢API。

結(jié)論

希望您已經(jīng)看到查詢GraphQl API並不是那麼大,尤其是使用GraphiQl之類的很棒的工具來幫助您完成?,F(xiàn)在可以肯定的是,實際將GraphQl數(shù)據(jù)集成到現(xiàn)實世界應(yīng)用程序中是另一回事,但這主要是由於處理客戶端和服務(wù)器之間的數(shù)據(jù)傳輸?shù)难}雜性。 GraphQL部分本身實際上很容易!

無論您是希望開始使用GraphQL還是只是學(xué)習(xí)足以查詢我們的數(shù)據(jù)並提出一些令人驚嘆的新見解,我希望本指南能夠證明有用!

而且,如果您有興趣參加我們的下一個調(diào)查(應(yīng)該是CSS 2020的狀態(tài)),請務(wù)必註冊我們的郵件列表,以便在我們啟動時可以通知您。

JavaScript API參考狀態(tài)

您可以在API.stateofjs.com上找到有關(guān)API的更多信息(包括指向?qū)嶋H端點和GitHub Repo的鏈接)。

這是JS API狀態(tài)內(nèi)使用的術(shù)語的快速詞彙表。

頂級字段

  • 人口統(tǒng)計:重組所有人口統(tǒng)計信息,例如性別,公司規(guī)模,工資等。
  • 實體:訪問有關(guān)特定“實體”(庫,框架,編程語言等)的更多信息。
  • 功能:特定JavaScript或CSS功能的使用數(shù)據(jù)。
  • 功能:相同,但遍布一系列功能。
  • 矩陣:訪問用於填充我們的交叉參考熱圖的數(shù)據(jù)。
  • 意見:特定問題的意見數(shù)據(jù)(例如“您認(rèn)為JavaScript正在朝正確的方向移動?”)。
  • 其他工具: “其他工具”部分的數(shù)據(jù)(文本編輯器,瀏覽器,捆綁器等)。
  • 資源: “資源”部分的數(shù)據(jù)(網(wǎng)站,博客,播客等)。
  • 工具:體驗特定工具(庫,框架等)的數(shù)據(jù)。
  • 工具:相同,但跨各種工具。
  • ToolsRankings:一系列工具的排名(意識,興趣,滿意度)。

普通字段

  • 完成:哪個比例的受訪者回答了任何給定的問題。
  • 存儲桶:包含實際數(shù)據(jù)的數(shù)組。
  • 年份/Allyears:是否獲取特定調(diào)查年度的數(shù)據(jù);或包含全年的陣列。

以上是使用JavaScript API練習(xí)GraphQl查詢的詳細(xì)內(nèi)容。更多資訊請關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

本網(wǎng)站聲明
本文內(nèi)容由網(wǎng)友自願投稿,版權(quán)歸原作者所有。本站不承擔(dān)相應(yīng)的法律責(zé)任。如發(fā)現(xiàn)涉嫌抄襲或侵權(quán)的內(nèi)容,請聯(lián)絡(luò)admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅(qū)動的應(yīng)用程序,用於創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

什麼是'渲染障礙CSS”? 什麼是'渲染障礙CSS”? Jun 24, 2025 am 12:42 AM

CSS會阻塞頁面渲染是因為瀏覽器默認(rèn)將內(nèi)聯(lián)和外部CSS視為關(guān)鍵資源,尤其是使用引入的樣式表、頭部大量內(nèi)聯(lián)CSS以及未優(yōu)化的媒體查詢樣式。 1.提取關(guān)鍵CSS並內(nèi)嵌至HTML;2.延遲加載非關(guān)鍵CSS通過JavaScript;3.使用media屬性優(yōu)化加載如打印樣式;4.壓縮合併CSS減少請求。建議使用工具提取關(guān)鍵CSS,結(jié)合rel="preload"異步加載,合理使用media延遲加載,避免過度拆分與復(fù)雜腳本控制。

什麼是AutoPrefixer,它如何工作? 什麼是AutoPrefixer,它如何工作? Jul 02, 2025 am 01:15 AM

Autoprefixer是一個根據(jù)目標(biāo)瀏覽器範(fàn)圍自動為CSS屬性添加廠商前綴的工具。 1.它解決了手動維護前綴易出錯的問題;2.通過PostCSS插件形式工作,解析CSS、分析需加前綴的屬性、依配置生成代碼;3.使用步驟包括安裝插件、設(shè)置browserslist、在構(gòu)建流程中啟用;4.注意事項有不手動加前綴、保持配置更新、非所有屬性都加前綴、建議配合預(yù)處理器使用。

什麼是圓錐級函數(shù)? 什麼是圓錐級函數(shù)? Jul 01, 2025 am 01:16 AM

theconic-Gradient()functionIncsscreatesCircularGradientsThatRotateColorStopSaroundAcentralPoint.1.IsidealForPieCharts,ProgressIndicators,colordichers,colorwheels和decorativeBackgrounds.2.itworksbysbysbysbydefindefingincolordefingincolorstopsatspecificains off.

CSS教程,用於創(chuàng)建粘性標(biāo)頭或頁腳 CSS教程,用於創(chuàng)建粘性標(biāo)頭或頁腳 Jul 02, 2025 am 01:04 AM

TocreatestickyheadersandfooterswithCSS,useposition:stickyforheaderswithtopvalueandz-index,ensuringparentcontainersdon’trestrictit.1.Forstickyheaders:setposition:sticky,top:0,z-index,andbackgroundcolor.2.Forstickyfooters,betteruseposition:fixedwithbot

CSS自定義屬性的範(fàn)圍是什麼? CSS自定義屬性的範(fàn)圍是什麼? Jun 25, 2025 am 12:16 AM

CSS自定義屬性的作用域取決於其聲明的上下文,全局變量通常定義在:root中,而局部變量則定義在特定選擇器內(nèi),以便組件化和隔離樣式。例如,定義在.card類中的變量僅對匹配該類的元素及其子元素可用。最佳實踐包括:1.使用:root定義全局變量如主題色;2.在組件內(nèi)部定義局部變量以實現(xiàn)封裝;3.避免重複聲明同一變量;4.注意選擇器特異性可能引發(fā)的覆蓋問題。此外,CSS變量區(qū)分大小寫,且應(yīng)在使用前定義以避免錯誤。若變量未定義或引用失敗,則會採用回退值或默認(rèn)值initial。調(diào)試時可通過瀏覽器開發(fā)者工

CSS教程專注於移動優(yōu)先設(shè)計 CSS教程專注於移動優(yōu)先設(shè)計 Jul 02, 2025 am 12:52 AM

Mobile-firstCSSdesignrequiressettingtheviewportmetatag,usingrelativeunits,stylingfromsmallscreensup,optimizingtypographyandtouchtargets.First,addtocontrolscaling.Second,use%,em,orreminsteadofpixelsforflexiblelayouts.Third,writebasestylesformobile,the

CSS教程,用於創(chuàng)建加載旋轉(zhuǎn)器和動畫 CSS教程,用於創(chuàng)建加載旋轉(zhuǎn)器和動畫 Jul 07, 2025 am 12:07 AM

創(chuàng)建CSS加載旋轉(zhuǎn)器的方法有三種:1.使用邊框的基本旋轉(zhuǎn)器,通過HTML和CSS實現(xiàn)簡單動畫;2.使用多個點的自定義旋轉(zhuǎn)器,通過不同延遲時間實現(xiàn)跳動效果;3.在按鈕中添加旋轉(zhuǎn)器,通過JavaScript切換類來顯示加載狀態(tài)。每種方法都強調(diào)了設(shè)計細(xì)節(jié)如顏色、大小、可訪問性和性能優(yōu)化的重要性,以提升用戶體驗。

如何創(chuàng)建本質(zhì)上響應(yīng)的網(wǎng)格佈局? 如何創(chuàng)建本質(zhì)上響應(yīng)的網(wǎng)格佈局? Jul 02, 2025 am 01:19 AM

要創(chuàng)建內(nèi)在響應(yīng)式網(wǎng)格佈局,核心方法是使用CSSGrid的repeat(auto-fit,minmax())模式;1.設(shè)置grid-template-columns:repeat(auto-fit,minmax(200px,1fr))讓瀏覽器自動調(diào)整列數(shù)並限制每列最小和最大寬度;2.使用gap控制格子間距;3.容器應(yīng)設(shè)為相對單位如width:100%、配合box-sizing:border-box避免寬度計算錯誤並用margin:auto居中;4.可選設(shè)置行高與內(nèi)容對齊方式提升視覺一致性,如row

See all articles