标题重写为:提升ESLint循环错误的美观程度
P粉010967136
P粉010967136 2023-08-25 12:50:19
[Vue.js讨论组]
<p>我正在创建一个 vue 组件</p> <p>但我收到以下错误</p> <pre class="brush:php;toolbar:false;">Type annotations can only be used in TypeScript files.</pre> <p>如果我删除类型子句,我就会得到</p> <pre class="brush:php;toolbar:false;">Missing return type on function.</pre> <p>组件看起来像:</p> <pre class="brush:php;toolbar:false;">&lt;template&gt; &lt;pre&gt;Market:{{ market }}&lt;/pre&gt; &lt;/template&gt; &lt;script&gt; import Market from "./Market"; export default { name: Market, components: {}, data() { //&lt;--- issue is reported here return { market: new Market(), }; }, }; &lt;/script&gt;</pre> <p>我猜我在 prettier 和 eslints 配置中存在冲突,因此一个将 vue 视为 TS 兼容,而另一个则不然</p> <p>我已经尝试了各种调整和更改,但到目前为止没有任何区别,所以有人可以指出我正确的配置来解决这个问题吗?</p> <p>tsconfig.json</p> <pre class="brush:php;toolbar:false;">{ "compilerOptions": { "target": "esnext", "module": "esnext", "strict": true, "jsx": "preserve", "importHelpers": true, "moduleResolution": "node", "experimentalDecorators": true, "skipLibCheck": true, "esModuleInterop": true, "allowSyntheticDefaultImports": true, "sourceMap": true, "baseUrl": ".", "types": [ "webpack-env" ], "paths": { "@/*": [ "src/*" ] }, "lib": [ "esnext", "dom", "dom.iterable", "scripthost" ] }, "include": [ "src/**/*.ts", "src/**/*.tsx", "src/**/*.vue", "tests/**/*.ts", "tests/**/*.tsx" ], "exclude": [ "node_modules" ] }</pre> <p>babel.config.js</p> <pre class="brush:php;toolbar:false;">module.exports = { presets: ["@vue/cli-plugin-babel/preset"], };</pre> <p>设置,json</p> <pre class="brush:php;toolbar:false;">{ "editor.insertSpaces": false, "editor.minimap.enabled": false, "files.eol": "n", "workbench.sideBar.location": "right", "php-cs-fixer.executablePath": "${extensionPath}\php-cs-fixer.phar", "launch": { "configurations": [], "compounds": [] }, "debug.javascript.usePreview": false, "window.zoomLevel": 3, "eslint.format.enable": true }</pre> <p>package.json</p> <pre class="brush:php;toolbar:false;">{ "dependencies": { "core-js": "^3.6.5", "vue": "^3.0.0", "vue-class-component": "^8.0.0-0" }, "devDependencies": { "@typescript-eslint/eslint-plugin": "^4.18.0", "@typescript-eslint/parser": "^4.18.0", "@vue/cli-plugin-babel": "~4.5.0", "@vue/cli-plugin-eslint": "~4.5.0", "@vue/cli-plugin-typescript": "~4.5.0", "@vue/cli-service": "~4.5.0", "@vue/compiler-sfc": "^3.0.0", "@vue/eslint-config-prettier": "^6.0.0", "@vue/eslint-config-typescript": "^7.0.0", "eslint": "^6.7.2", "eslint-plugin-prettier": "^3.3.1", "eslint-plugin-vue": "^7.0.0", "prettier": "^2.2.1", "typescript": "~4.1.5" }, "eslintConfig": { "root": true, "env": { "node": true }, "extends": [ "plugin:vue/vue3-essential", "eslint:recommended", "@vue/typescript/recommended", "@vue/prettier", "@vue/prettier/@typescript-eslint" ], "parserOptions": { "ecmaVersion": 2020 }, "rules": {} }, "browserslist": [ "&gt; 1%", "last 2 versions", "not dead" ] }</pre> <p><br /></p>
P粉010967136
P粉010967136

全部回复(1)
P粉163951336

我之前也遇到了同样的问题,用以下代码修复:

<script lang="ts">
    ...
</script>

如果对你有用,请告诉我。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号