GraphQL 結合Apollo 以及vue的例子

2021-09-28 19:47:10 字數 2343 閱讀 4780

graphql 一些關鍵概念包含 type,schema, query, mutation等,下面會分別做一下簡單的說明,具體還是要結合實際**進行分析。

所謂的查詢就是向服務端獲取你要想的資料,比如我要查所有的使用者列表

// 先定義 user 資料結構

type user

// query 查詢

query

get /api/v1/userlist

get /api/v1/userlist/

:id/

❄️ 值得注意的是,查詢欄位時,是並行執行,而變更欄位時,是線性執行,乙個接著乙個。

比如說,我要變更title 和 author

type mutation
解析 mutationtitleauthor

mutation:}}

,}

在 graphql 中,schema 主要是用來描述資料的形態,哪些資料能被查詢到,所以在 schema 中主要定義可用資料的資料型別。總之:要查到的資料都必須要在 schema 中進行定義,所以這裡是需要寫很多 type 的,這裡還需要統一定義 query 和 mutation,也就是要把上面那些定位全部放到這裡來

type user 

type query

type mutation

⬇️基礎的內容大概就是醬紫,下面開始來一波實戰操作

apollo-graphql 是基於 graphql 封裝的一種實現,它可以在服務上進行分層,包括 rest api 和 資料庫,它包含客戶端和服務端,還有 gui 開發工具,讓開發人員可以快速上手進行開發。

?具體想法

這邊採用apollo-server-express快速搭建服務端

首先安裝依賴,這個例子只需安裝以下三個工具

yarn add apollo-server-express express graphql

對於apollo-server,比較基本的就是要搞清楚schemaresolvers應該如何定義。

?最重要的其實就是

const server =

newapolloserver()

;

定義好typedefs(schema)resolvers,便可快速啟動

type article 

type articlecontent

type category

type query

type mutation

把 這些 schema 轉換為 typedefs, 需要用到

const = require("apollo-server-express");

module.exports = gql (code...);

//部分**:

const resolvers =

) 的文章`);}

if(article.isread)

article.isread =

true

;return article;}}

};

用 vue 來搭建專案

yarn add vue-apollo graphql apollo-boost

import apolloclient from "apollo-boost";

import vueapollo from "vue-apollo";

vue.use(vueapollo);

vue.config.js

module.exports =

};

import gql from "graphql-tag"

;const fetchdatagql = gql`

getallcategories }`;

export default;}

, apollo:};

}}};

apollo學習筆記二十 apollo 感知(下)

自動駕駛中深度學習模型需要更好的可解釋性,歸結為如何評估模型讓使用者知道模型是安全的?模型更新後如何做回歸測試?模型的應用邊界在 目前,大家認為可解釋性可以通過測試來體現,如果大量測試得到相同的結果,那麼原理是不是真正的可解釋也就沒那麼重要。在感知模組中,除了做基本的檢測 分割之外,還有後處理階段等...

GraphQL 標量型別

標量 scalartypedefinition 是 graphql 中不可分割的原子資料型別,在服務中充當葉子節點。對於客戶端而言,合法的查詢集 select set 必須到達葉子節點,也就是到達標量型別節點。graphql 規範提供了五種標量 int 32 位有符號整型,超出精度範圍後,引擎會丟擲...

GraphQL開發整理

graphql 官網 graphql獲取資料 schema 和型別 schema 圖表模式 核心概 念 color 核心概念 客戶端響應資料問題 後續補充apollo相關 rest 的 api 配合json格式的資料交換,使得前後端分離 資料互動變得非常容易,而且也已經成為了目前web領域最受歡迎的...