javascript - 带有 CoC + Neovim 的 GraphQL LSP
问题描述
我正在尝试通过 CoC(完成征服)设置一个 GraphQL 语言服务器以在 NVIM 中使用以进行 linting。
我在这里从 GraphQL 安装了 LSP,但我无法让它识别我的 GQL 模式。我目前正在使用 Apollo,因此我的 Schema 位于 Javascript 文件中。
设置 LSP 的例程在这里。
我.graphqlrc
在项目的根目录中放置了一个文件,它指向一个包含我的架构的 Javascript 文件。
schema: api/src/schema.js
语言服务器似乎短暂运行并 lint 此文件,但很快崩溃,然后给我以下错误:
[Info - 3:47:22 PM] Connection to server got closed. Server will restart.
8/11/2021, 3:47:22 PM [4] (pid: 43189) graphql-language-service-usage-logs: {"type":"usage","messageType":"initialize"}
8/11/2021, 3:47:22 PM [1] (pid: 43189) graphql-language-service-usage-logs: Error:
Unable to find any GraphQL type definitions for the following pointers:
- api/src/schema.js
这是我的 CoC 设置文件:
// coc-settings.json
{
"languageserver": {
"graphql": {
"command": "graphql-lsp",
"args": ["server", "-m", "stream"],
"filetypes": [
"typescript",
"typescriptreact",
"graphql",
"javascript",
"javascriptreact"
]
}
},
}
schema.js 文件:
const { gql } = require('apollo-server');
/**
* Type Definitions for our Schema using the SDL.
*/
const typeDefs = gql`
type User {
id: ID!
username: String!
}
type Pet {
id: String!
createdAt: Int!
name: String!
type: String!
img: String!
}
type Query {
pets: [Pet]!
}
type Mutation {
cool: String!
}
`;
module.exports = typeDefs;
解决方案
推荐阅读
- html - 打字稿如何更改scss文件中的内容(开关)
- actions-on-google - 如何帮助 Google 助理识别我的操作名称?
- sql-server - 在某个符号之间查找值
- oracle - 在 SQL Plus 中执行时出现 Oracle 警告消息
- c - 关于在 C 中的函数调用中将箭头符号作为参数传递的困惑
- spring-security - 实现 PersistentTokenBasedRememberMeServices 的正确方法
- codeigniter - Sendgrid 事件通知 POST 数据始终为空
- python - 如何在 Django 中创建自更新变量?
- opticalflow - 给定每帧的一组像素单元,如何测量两帧之间的差异?
- react-select - 我们可以以编程方式删除 react-select 中的选定选项之一吗?