2014-04-17 25 views
5

Yönlendirici bir şablon çok satırlı yapmaya çalışıyorum. Mümkün mü?yönerge tanımında çok satırlı şablon

myApp.directive('myDir', function() { 
return { 
    restrict: 'E',   
    template: '<div> 
       |Hello, 
       |{{test}}! 
       |</div>' 
    }; 
}); 

Burada ne demek istediğimi görmek için bir Fiddle bu.

cevap

13

Her satırın sonunda "\" kullanın.

myApp.directive('myDir', function() { 
return { 
    restrict: 'E',   
    template: '<div>\ 
       |Hello,\ 
       |{{test}}!\ 
       |</div>' 
}; 

Burada Fiddle

+1

Buna dikkat edin. Çünkü bu ECMAScript'in bir parçası değil! -> https://github.com/jgable/open-source/blob/master/styleguides/JavaScript/language-rules.md#multiline-string-literals – Christoph

2

Ayrıca ben daha iyi görünüyor düşünüyorum bu, hangi ulaşmak için JavaScript işlevinin join() faydalanmak olabilir bu.

myApp.directive('myDir', function() { 
    return { 
     restrict: 'E', 
     template: ['<div>', 
      'Hello, ', 
      '{{test}}!', 
      '</div>'].join(''), 
    }; 
}); 

JSFiddle burada (Daha iyi görünmesi için | 's kaldırıldı).

3

Ayrıca birleştirerek, bireysel dizeleri:

myApp.directive('myDir', function() { 
return { 
    restrict: 'E',   
    template: '<div>' + 
      'Hello,' + 
      '{{test}}!' + 
      '</div>' 
    }; 
}); 
0

Sadece çok satırlı şablon için tilde (`) aşağıda sembolü kullanabilirsiniz öğrendim

myApp.directive('myDir', function() { 
    return { 
     restrict: 'E',   
     template: `<div> 
       |Hello, 
       |{{test}}! 
       |</div>` 
    }; 
}); 
+0

Çok satırlı dizeyi kapatmak için kullanılan sembol backtick'tir (') ve ES 2015 standardının bir parçası, daha fazla bilgi burada bulunabilir - https://stackoverflow.com/questions/27678052/what-is-the-usage-of-the-backtick-symbol-in-javascript – deepesh

0

Tek tek dizeleri arada kullanabilirsiniz ve, artıları her satırın başına, sonunda yerine koymak. Bu, 4-alan bir tabstop kullanırsanız güzel çalışır: template, 8 karakter uzunluğundadır, böylece tüm artılar, kolonun hemen altında sıralanır.

myApp.directive('myDir', function() { 
return { 
    restrict: 'E',   
    template: '<div>' 
      + 'Hello, ' 
      + '{{test}}!' 
      + '</div>' 
    }; 
}); 

İşte JSFiddle.

+0

Bu şaşırtıcı derecede zor artı satırın sonunda veya sonraki satırın başında koyarsanız JavaScript'in umurunda olup olmadığını öğrenmek için. Birisinin kesin bir kaynağı varsa, lütfen paylaşın. FF, Chrome, IE 11'de test edildi. Her zaman böyle olmasaydı, sözdizimsel değişimin çok uzun zaman önce gerçekleştiğini düşünüyorum. –