Closed
Description
Tell us about your environment
- ESLint Version:
4.16.0
- eslint-plugin-vue Version:
4.2.2
- Node Version:
v8.1.3
Please show your full configuration:
const isDev = process.env.NODE_ENV === 'development';
// http://eslint.org/docs/user-guide/configuring
module.exports = {
root: true,
parserOptions: {
parser: 'babel-eslint',
sourceType: 'module'
},
env: {
browser: true,
},
extends: [
'eslint:recommended',
'plugin:vue/recommended', // or 'plugin:vue/base'
'airbnb-base',
],
// required to lint *.vue files
plugins: [
'vue',
],
// check if imports actually resolve
'settings': {
'import/resolver': {
'webpack': {
'config': 'build/webpack.base.conf.js'
}
},
},
// add your custom rules here
'rules': {
// eslint rules
'camelcase': ['error', {
'properties': 'always'
}],
'function-paren-newline': ['error', 'consistent'],
'id-match': ['error', '^(\\${0,1}[a-z]+[a-zA-Z_]*||[A-Z_0-9]+||[pk][12])$', {
'onlyDeclarations': true,
}],
'max-len': ['error', {
'code': 140,
'ignoreTrailingComments': true,
'ignoreStrings': true,
'ignoreTemplateLiterals': true,
'ignoreUrls': true,
'ignoreComments': true
}],
'no-underscore-dangle': 0,
'no-return-assign': 0,
'object-curly-newline': ['error', {
'consistent': true
}],
'one-var': ['error', {
'initialized': 'never',
}],
'one-var-declaration-per-line': ['error', 'initializations'],
'prefer-destructuring': 0,
// allow debugger during development
'no-debugger': isDev ? 0 : 2,
'no-console': isDev ? 0 : 1,
'no-unused-vars': isDev ? 0 : 1,
// don't require .vue extension when importing
'import/extensions': ['error', 'always', {
'js': 'never',
'vue': 'never'
}],
// allow optionalDependencies
'import/no-extraneous-dependencies': ['error', {
'optionalDependencies': ['test/unit/index.js']
}],
// allow single export
'import/prefer-default-export': 'off',
// vue lint configs
'vue/attribute-hyphenation': ['error', 'always'],
'vue/html-end-tags': 'error',
'vue/html-indent': ['error', 2, {
'attribute': 1,
'closeBracket': 0,
'ignores': []
}],
'vue/html-quotes': ['error', 'double'],
'vue/html-self-closing': ['error', {
'html': {
'normal': 'never',
'void': 'never',
'component': 'never'
},
'svg': 'always',
'math': 'always',
}],
'vue/max-attributes-per-line': [2, {
'singleline': 10,
'multiline': {
'max': 2,
'allowFirstLine': false
},
}],
'vue/mustache-interpolation-spacing': ['error', 'always'],
'vue/name-property-casing': ['error', 'kebab-case'],
'vue/no-async-in-computed-properties': 'error',
'vue/no-confusing-v-for-v-if': 'error',
'vue/no-dupe-keys': 'error',
'vue/no-duplicate-attributes': ['error', {
allowCoexistClass: true,
allowCoexistStyle: true,
}],
'vue/no-multi-spaces': 'error',
'vue/no-parsing-error': 'error',
'vue/no-reserved-keys': ['error', {
'reserved': ['$el', '$nextTick', '$route', '$router', 'asyncData'],
'groups': [],
}],
'vue/no-shared-component-data': 'error',
'vue/no-side-effects-in-computed-properties': 'error',
'vue/no-template-key': 'error',
'vue/no-textarea-mustache': 'error',
// 'vue/order-in-components': ['error', {
// 'order': [
// ['name', 'delimiters', 'functional', 'model'],
// ['components', 'directives', 'filters'],
// ['parent', 'mixins', 'extends', 'provide', 'inject'],
// 'el',
// 'template',
// 'props',
// 'propsData',
// 'data',
// 'computed',
// 'watch',
// 'asyncData',
// 'onWechatReady',
// 'LIFECYCLE_HOOKS',
// 'methods',
// 'render',
// 'renderError'
// ],
// }],
'vue/require-component-is': 'error',
'vue/require-default-prop': 'error',
'vue/require-prop-types': 'error',
'vue/require-render-return': 'error',
'vue/require-v-for-key': 'error',
'vue/require-valid-default-prop': 'error',
'vue/return-in-computed-property': 'error',
'vue/this-in-template': ['error', 'never'],
'vue/v-bind-style': ['error', 'shorthand'],
'vue/v-on-style': ['error', 'shorthand'],
'vue/valid-template-root': 'error',
'vue/valid-v-bind': 'error',
'vue/valid-v-cloak': 'error',
'vue/valid-v-else-if': 'error',
'vue/valid-v-else': 'error',
'vue/valid-v-for': 'error',
'vue/valid-v-html': 'error',
'vue/valid-v-if': 'error',
'vue/valid-v-model': 'error',
'vue/valid-v-on': 'error',
'vue/valid-v-once': 'error',
'vue/valid-v-pre': 'error',
'vue/valid-v-show': 'error',
'vue/valid-v-text': 'error',
}
}
What did you do? Please include the actual source code causing the issue.
<div class="pull-down-touching-tip__text">
{{ scope.distance < fireDistance ? '继续下拉刷新' : '松手刷新' }}
</div>
What did you expect to happen?
No error.
What actually happened? Please include the actual, raw output from ESLint.