2017-09-23 62 views
1

我將我的Angular應用程序REST後端轉換爲GraphQL。我試圖從graphql-tag導入gql。我正在搜索和搜索,我的進口看起來像所有人都...graphql-tag/index沒有導出成員'gql'

import { Angular2Apollo } from 'angular2-apollo'; 
import { ApolloClient } from 'apollo-client'; 
import { gql } from 'graphql-tag'; 

但gql有紅色下劃線表示未找到。當我運行ng serve我得到這個錯誤在cmder ...

.../node_modules/graphql標籤/索引「」沒有出口成員 'GQL'。)

我遇到很多,許多阿波羅和角NPM安裝,包括npm install --save graphql-tag,想安裝什麼我失蹤,似乎並不重要我安裝一下

我在做什麼錯

回答

0

我明白了。這裏發生了什麼是您的代碼試圖解除從graphql-tag導出的對象的結構gql,但錯誤是告訴您沒有該名稱的導出成員,這意味着導出的對象沒有方法該名稱,或者有多個對象被導出。

如果您要查看graphql-tag的代碼,您會發現它可能有幾個導出對象,或者它只有一個沒有名爲gql的方法,所以您需要做的是直接採用gql即:沒有解構它,即:沒有{}。

這將是正確的:import gql from 'graphql-tag'

你可以看到這一切的時候您可以根據自己的模塊導出和導入的東西。

提交記憶,每次看到{something}時,它都會將something拉下對象。

下面是一些示例代碼來說明:

const object = { 
    test: { name = 'Locohost' } 
} 

const { name } = object.test 

console.log(name) 
+0

Uhhg,我是個白癡。非常感謝:-) – Locohost

2

使用默認的出口,而不是:?

import gql from 'graphql-tag'; 
相關問題