2015-09-22 15 views
15

görünür string` tipiyle uyumlu değil `yapar Aşağıdaki kod var ve bunun içinde WebStorm muayene Binary operation argument type newVal is not compatible with type string görünür:Neden ikili işlem argüman tipi kurumu üzerinde

enter image description here

neden

merak ediyorum

Tam modül kodu:

define(function (require) { 
    "use strict"; 

    var ng = require('angular'); 
    require('../ngModule').directive('downloadFile', ['$parse', 'auth.authService', function ($parse, authService) { 
     return { 
      restrict: 'A', 
      link: function (scope, element, attrs) { 
       var getter = $parse(attrs.downloadFile); 

       scope.$watch(getter, function (path) { 
        if (path !== "") { 
         var form = document.createElement("form"); 
         var element1 = document.createElement("input"); 
         var element2 = document.createElement("input"); 

         form.method = "POST"; 
         form.action = path; 

         element1.value = authService.getToken(); 
         element1.name = "Authorization"; 
         form.appendChild(element1); 

         element.append(form); 

         form.submit(); 
         element.empty(); 
        } 
       }); 
      } 
     }; 
    }]); 
}); 
+0

metin olarak tam kod parçacığını sağlayabilir Lütfen? Kodunuza ek açıklama eklemek için JSDoc kullanıyor musunuz? – lena

+0

@lena, evet, cevabımı güncelledim. Hayır, hemen hemen bazı dosyalarda 'JSDoc' kullanmıyorum, bazen bazı dosyalarda –

+1

teşekkürler :) Kodunuz kullanıldığında benim için herhangi bir uyarı bildirilmiyor ... bazı diğer dosyalar olmalı. Ctrl + 'yola' tıklamayı deneyin - WebStorm nerede geziniyor? Ayrıca, önbellekleri geçersiz kılmayı deneyin - sorun devam ediyor mu? – lena

cevap

7

angularjs en JSDoc tanımı WebStorm path düşündüren argüman bir boole.

Kendi JSDoc ekleyerek WebStorm şikayet etmeyi yapabilirsiniz:

if (path !== /** @type {boolean} */"") {

+4

no'lu bir anlam ifade etmeyin, lütfen Angular'ın JSDoc'unun 'path' 'ın boolean olduğunu belirttiği kodun sözünü işaret edebilir misiniz? Dinleyicinin tanımı şöyledir: '@param {function (newVal, eskiVal, kapsam)} dinleyici Geri çağırma, değer ne zaman çağrılır - boolean türünden bahsedilmez –

İlgili konular