line_push/node_modules/eslint-plugin-vue/lib/rules/syntaxes/scope-attribute.js
2022-07-17 13:16:16 +08:00

28 lines
657 B
JavaScript

/**
* @author Yosuke Ota
* See LICENSE file in root directory for full license.
*/
'use strict'
module.exports = {
deprecated: '2.5.0',
createTemplateBodyVisitor (context) {
/**
* Reports `scope` node
* @param {VDirectiveKey} scopeKey node of `scope`
* @returns {void}
*/
function reportScope (scopeKey) {
context.report({
node: scopeKey,
messageId: 'forbiddenScopeAttribute',
// fix to use `slot-scope`
fix: fixer => fixer.replaceText(scopeKey, 'slot-scope')
})
}
return {
"VAttribute[directive=true] > VDirectiveKey[name.name='scope']": reportScope
}
}
}