如何更改 vue.js 应用程序中的 lint 目录?

Posted

技术标签:

【中文标题】如何更改 vue.js 应用程序中的 lint 目录?【英文标题】:How to change the lint directory in a vue.js app? 【发布时间】:2018-12-25 20:09:35 【问题描述】:

我正在现有的 php 应用程序中设置 Vue.js。由于 PHP 应用程序有一个现有的目录结构,我不得不使用 vue.config.js 文件更改在 Vue Inspect 中找到的一些默认位置。我要 lint 的网站的 vue 部分保存在:

/src/vue-app

当运行“npm run lint”时,它会查看“/src”下的所有内容。如何告诉 linter 只查看“/src/vue-app”?我的 vue.config.js 文件目前看起来像这样:

const htmlWebpackPlugin = require('html-webpack-plugin')
const path = require('path')

module.exports = 
  // options...
  baseUrl: 'https://local.my-site.com/dist/vue-app',
  outputDir: '/sites/my-site/public/dist/vue-app',
  configureWebpack: config => 
    return 
      entry: 
        app: './src/vue-app/main.js'
      ,
      resolve: 
        alias: 
          '@': path.resolve(__dirname, './src/vue-app')
        
      
    
  ,
  chainWebpack: config => 
    config
      .plugin('html')
      .tap(args => 
        return [
          template: path.resolve(__dirname, './src/vue-app/index-default.phtml'),
          filename: path.resolve(__dirname, './sites/my-app/module/Dash/view/dash/index.phtml')
        ]
      )
  


更新:

我在 package.json 文件中配置了以下内容。

  "scripts": 
    "serve": "vue-cli-service serve",
    "build": "vue-cli-service build",
    "lint": "vue-cli-service lint",
    "test:unit": "vue-cli-service test:unit",
    "test:e2e": "vue-cli-service test:e2e"
  ,

还有这个……

  "eslintConfig": 
    "root": true,
    "env": 
      "node": true
    ,
    "extends": [
      "plugin:vue/essential",
      "@vue/standard"
    ],
    "rules": ,
    "parserOptions": 
      "parser": "babel-eslint"
    
  ,

【问题讨论】:

【参考方案1】:

因此,虽然我希望有一种更简单的配置方法,但我在自己的项目中找到了前进的道路:

    Vue CLI 项目位于/src/webapp/ .eslintrc.prettierrc 住在 src/webapp package.json 位于根目录 /

所以要使命令 vue-cli-service lint 只针对我的 Vue CLI 目录。结果定义为:

vue-cli-service lint ./src/webapp/**/*.js ./src/webapp/**/*.vue

希望这对其他人有所帮助!

【讨论】:

【参考方案2】:

您可以将您的 lint 命令从 package.json 更改为包含您的目录。例如

"lint": "eslint src/vue-app",

见命令行docs

【讨论】:

有趣。我添加了我在 package.json 文件中设置的内容。我正在使用 vue-cli-service 来运行 lint。我可以在 eslintConfig 中设置什么吗? @AdamYoungers afaik eslintConfig 中没有这样的选项。但是你可以将相同的选项传递给 vue-cli-service 并且它会起作用。例如我的命令: "lint": "vue-cli-service lint --ignore-path .gitignore src tests",

以上是关于如何更改 vue.js 应用程序中的 lint 目录?的主要内容,如果未能解决你的问题,请参考以下文章

Vue.js 中的依赖循环问题

如何通过选定的道具动态地更改 vue js 2 中的选项卡?

当 nuxt.js (vue.js) 中的路由更改时,Facebook 分享按钮消失

如何在不更改 Vue 中的 url 的情况下返回 404 错误?

Vue.js - 如何在数据对象更改时向父组件发出?

Laravel Vue.js 应用程序的 SEO