diff --git a/packages/@vue/cli-plugin-typescript/lib/tslint.js b/packages/@vue/cli-plugin-typescript/lib/tslint.js index 1d34f90a70..e2f90601ee 100644 --- a/packages/@vue/cli-plugin-typescript/lib/tslint.js +++ b/packages/@vue/cli-plugin-typescript/lib/tslint.js @@ -49,7 +49,7 @@ module.exports = function lint (args = {}, api, silent) { before: content.slice(0, script.start), after: content.slice(script.end) }) - return script.content + return script } } @@ -61,8 +61,9 @@ module.exports = function lint (args = {}, api, silent) { const getSourceFile = program.getSourceFile program.getSourceFile = function (file, languageVersion, onError) { if (isVueFile(file)) { - const script = parseTSFromVueFile(file) || '' - return ts.createSourceFile(file, script, languageVersion, true) + const { content, lang = 'js' } = parseTSFromVueFile(file) || { content: '', lang: 'js' } + const contentLang = ts.ScriptKind[lang.toUpperCase()]; + return ts.createSourceFile(file, content, languageVersion, true, contentLang) } else { return getSourceFile.call(this, file, languageVersion, onError) }