2015-12-02 18 views
5

Dlaczego mój problemMatcher działa? Jestem całkiem pewien regex, ale nie zgłasza żadnych problemów, nawet istnieją pewne na standardowe wyjście ...Dlaczego ten problem nie działa w kodzie VS?

// the matcher 
"problemMatcher": { 
    "owner": "typescript", 
    "fileLocation": ["relative", "${workspaceRoot}"], 
    "pattern": { 
     "regexp": "^TypeScript (warning|error): (.*)\\((\\d+),(\\d+)\\): (.*)$", 
     "severity": 1, 
     "file": 2, 
     "line": 3, 
     "column": 4, 
     "message": 5 
    } 
} 

//the browserify/tsify pipeline 
browserify().add('main.ts') 
    .plugin(tsify, { noImplicitAny: false, removeComments:true }) 
    .transform("babelify",{ extensions: ['.ts'], presets: ["es2015"]}) 
    .bundle() 
    .on('error', function (error) { console.log(error.toString()); }) 
    .pipe(source('bundle.js')) 
    .pipe(gulp.dest('www/js/dist/')); 

//gulp sample output 
[00:39:00] Starting 'ts-compile'... 
TypeScript error: main.ts(118,30): Error TS2339: Property 'object' does not exist on type 'boolean'. 
TypeScript error: main.ts(137,24): Error TS2339: Property 'object' does not exist on type 'boolean'. 
TypeScript error: main.ts(507,44): Error TS2304: Cannot find name 'loading'. 
[00:39:03] Finished 'ts-compile' after 2.98 s 
+0

Wszystkie biblioteki regex wydają się różnić w swoich szczegółach. Jeśli regex jest w błędzie, podejrzewam, że operator alternatywny '|' ma wyższy priorytet niż oczekiwano. Spróbuj '((ostrzeżenie) | (błąd)) i sprawdź, czy to coś zmieni. – eh9

+0

@santa Regex działa naprawdę. Jestem w stanie uzyskać bezproblemowe błędy dla przykładowego wyjścia w VSCode przy użyciu narzędzia do rozwiązywania problemów. Jak wygląda twój plik tasks.json? – Wosi

+0

już znalazłem mój problem @Wosi musiałem umieścić tasks.json w folderze .vscode (który zawierał domyślny, który sprawił, że myślę, że moje było używane w pierwszej kolejności) – santa

Odpowiedz

3

I rozwiązany poprzez wprowadzenie tasks.json do .vscode folderu. Początkowo sądziłem, że tasks.json zostanie znalezione jako tsconfig.json (root-projekt), ale okazało się, że jest błędne.

+1

dzięki za twoje gramatyki i rzeczy mr @nhahtdh – santa