Akryum / Akryum/vue-cli-plugin-apollo

it does not work in vue cli preset

Đang mở
#342 0 bình luận 0 reaction 0 người được giao Xem trên GitHub
Ngôn ngữ chính
JavaScript
Star
477
Fork
109
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Mô tả

when i put vue-cli-plugin-apollo in my vue-cli preset. the .vuerc file is:

{
"useTaobaoRegistry": false,
"packageManager": "yarn",
"latestVersion": "4.4.1",
"lastChecked": 1590545595795,
"presets": {
"test": {
"useConfigFiles": true,
"plugins": {
"@vue/cli-plugin-babel": {},
"@vue/cli-plugin-typescript": {
"classComponent": true,
"useTsWithBabel": true
},
"@vue/cli-plugin-router": {
"historyMode": true
},
"@vue/cli-plugin-eslint": {
"config": "base",
"lintOn": [
"save"
]
},
"vue-cli-plugin-apollo":{"addServer":false,
"publishSchema":false,
"addExamples":false,
"addApolloEngine":false}
}
}
}

it cannot modify main.js file.

in plugin's generator, the main.js or main.ts don't exist when plugin run.

solution:

replace the code

```
try {
const tsPath = api.resolve('src/main.ts')
const jsPath = api.resolve('src/main.js')

const tsExists = fs.existsSync(tsPath)
const jsExists = fs.existsSync(jsPath)

if (!tsExists && !jsExists) {
throw new Error('No entry found')
}

const file = tsExists ? 'src/main.ts' : 'src/main.js'
api.injectImports(file, `import { createProvider } from './vue-apollo'`)
api.injectRootOptions(file, `apolloProvider: createProvider(),`)
} catch (e) {
api.exitLog(`Your main file couldn't be modified. You will have to edit the code yourself: https://github.com/Akryum/vue-cli-plugin-apollo#manual-code-changes`, 'warn')
}
```

by

```
try {
api.injectImports(api.entryFile, `import { createProvider } from './vue-apollo'`)
api.injectRootOptions(api.entryFile, `apolloProvider: createProvider(),`)
} catch (e) {
api.exitLog(`Your main file couldn't be modified. You will have to edit the code yourself: https://github.com/Akryum/vue-cli-plugin-apollo#manual-code-changes`, 'warn')
}

```
thx.

Hướng dẫn đóng góp

Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này

Đánh giá

Issue này chưa được đánh giá.

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.