Visual studio code 开发 Vue 记录

使用 vue-cli 初始化项目

命令行下运行:vue init webpack demo, 前几项都默认回车,Use ESLint to lint your code, 选择 Airbnb, unit test 和 e2e test 暂时选择 No。

使用 vetur 插件后格式化 vue 单引号变双引号

VS Code 默认不认识 .vue 文件,需要安装 vetur, 但是装完 vetur, 把 .vue 格式化的时候,会把 string 的引用从单引号变成双引号,导致 airbnb 报错。原因是 vetur 使用 prettier 来格式化, vetur doc 有说明。
解决办法:在项目根目录新建 .prettierrc 文件,在里面加上

{
"singleQuote":true
}

vetur 格式化文档时候默认把 trailing comma 删除

trailing comma, 特别是多行的 object 或者 array,还是有用处的。修改 .prettierrc, 添加 "trailingComma": all。[官方介绍](https://prettier.io/docs/en/options.html),搜索 Trailing Commas

eslint 报错:missing trailing comma

npm run dev 的时候,报错 http://eslint.org/docs/rules/comma-dangle Missing trailing comma 。 解决办法,在 .eslintrc.js 中添加

rules: {
  ...
  "comma-dangle": ["error", "only-multiline"],
}

官网详细说明

vue 和 node 前后端分离

在 vue-cli 生成的项目, /config/index.js, 修改 proxyTable 如下:

    proxyTable: {
      '/api': {
        target: 'http://localhost:3000',
        changeOrigin: true,
        pathRewrite: {
          '^/api': '/api'
        }
      }
    },

假如 vue 发出请求 http://localhost:8080/api/xx, 现在会转发到 http://localhost:3000/api/xx

Turn off ESLint's formatting rules

有时候 prettier 格式化后,会与 eslint 规则冲突,prettier 官网给了一个方案,使用 eslint-config-prettier,官网说明在这里

办公室电脑的 vs code settings:

{
    "editor.fontSize": 18,
    "window.zoomLevel": 1,
    "editor.renderWhitespace": "all",
    "files.trimTrailingWhitespace": true,
    "vetur.format.defaultFormatter.html": "js-beautify-html",
    "vetur.format.defaultFormatterOptions": {
        "js-beautify-html": {
            "wrap_attributes": "force-aligned",
        }
    },
    "eslint.validate": [
        "javascript",
        "javascriptreact",
        {
            "language": "vue",
            "autoFix": true
        },
    ],
    "stylusSupremacy.insertColons": false, // 是否插入冒号
    "stylusSupremacy.insertSemicolons": false, // 是否插入分好
    "stylusSupremacy.insertBraces": false, // 是否插入大括号
    "stylusSupremacy.insertNewLineAroundImports": false, // import之后是否换行
    "stylusSupremacy.insertNewLineAroundBlocks": false, // 两个选择器中是否换行
    "files.hotExit": "off",
    "editor.tabSize": 2
}

vs code 安装的 extensions

  • Manta's Stylus Supremacy
  • Bracket Pair Colorizer
  • ESLint
  • Vetur
  • Prettier - Code formatter
  • language-stylus

你可能感兴趣的:(Visual studio code 开发 Vue 记录)