156 votes

comment implémenter la réduction des régions/codes en javascript

Comment mettre en œuvre les régions, c'est-à-dire l'effondrement du code, pour JavaScript dans Visual Studio ?

S'il y a des centaines de lignes en javascript, il sera plus compréhensible d'utiliser le pliage de code avec des régions comme en vb/C#.

#region My Code

#endregion

1 votes

Aucune de ces solutions n'a fonctionné aussi bien pour moi que celle-ci. stackoverflow.com/questions/46267908/

83voto

Kaushik Thanki Points 2107

Bonne nouvelle pour les développeurs qui travaillent avec la dernière version de Visual Studio.

El L'essentiel du Web viennent avec cette fonctionnalité.

Regardez ça

enter image description here

Remarque : pour VS 2017, utilisez Régions JavaScript : https://marketplace.visualstudio.com/items?itemName=MadsKristensen.JavaScriptRegions

52voto

BrianFinkel Points 1547

Microsoft dispose désormais d'une extension pour VS 2010 qui fournit cette fonctionnalité :

Extensions de l'éditeur JScript

0 votes

C'est fantastique ! J'espère qu'ils l'incluront dans la prochaine mise à jour de VS. Merci pour le partage !

0 votes

Une extension vraiment merveilleuse, encore meilleure que l'extension de contournement d'un tiers.

2 votes

Est-ce que cela se produit pour VS 2012 et 2013 ?

44voto

Umitk Points 579

C'est facile !

Marquez la section que vous voulez réduire et,

Ctrl+M+H

Et pour l'étendre, utilisez la marque '+' sur sa gauche.

32voto

MCSI Points 1608

Pour ceux qui sont sur le point d'utiliser le studio visuel 2012, existe le Essentiels du Web 2012

Pour ceux qui sont sur le point d'utiliser le studio visuel 2015, existe le Web Essentials 2015.3

L'utilisation est exactement comme @prasad a demandé

4 votes

+1 - cela devrait être la réponse, car la plupart des gens utiliseront 2012/2013 maintenant ! (cela fonctionne aussi pour 2013)

26voto

L'article de blog ici l'explique et ceci Question MSDN .

Vous devez utiliser les macros de Visual Studio 2003/2005/2008.

Copier + Coller de l'entrée du blog pour des raisons de fidélité :

  1. Ouvrir l'explorateur de macros

  2. Créer une nouvelle macro

  3. Nommez-le OutlineRegions

  4. Cliquez sur Edit macro et collez le code VB suivant :

    Option Strict Off Option Explicit Off

    Imports System Imports EnvDTE Imports EnvDTE80 Imports System.Diagnostics Imports System.Collections

    Public Module JsMacros

    Sub OutlineRegions()
        Dim selection As EnvDTE.TextSelection = DTE.ActiveDocument.Selection
    
        Const REGION_START As String = "//#region"
        Const REGION_END As String = "//#endregion"
    
        selection.SelectAll()
        Dim text As String = selection.Text
        selection.StartOfDocument(True)
    
        Dim startIndex As Integer
        Dim endIndex As Integer
        Dim lastIndex As Integer = 0
        Dim startRegions As Stack = New Stack()
    
        Do
            startIndex = text.IndexOf(REGION_START, lastIndex)
            endIndex = text.IndexOf(REGION_END, lastIndex)
    
            If startIndex = -1 AndAlso endIndex = -1 Then
                Exit Do
            End If
    
            If startIndex <> -1 AndAlso startIndex < endIndex Then
                startRegions.Push(startIndex)
                lastIndex = startIndex + 1
            Else
                ' Outline region ...
                selection.MoveToLineAndOffset(CalcLineNumber(text, CInt(startRegions.Pop())), 1)
                selection.MoveToLineAndOffset(CalcLineNumber(text, endIndex) + 1, 1, True)
                selection.OutlineSection()
    
                lastIndex = endIndex + 1
            End If
        Loop
    
        selection.StartOfDocument()
    End Sub
    
    Private Function CalcLineNumber(ByVal text As String, ByVal index As Integer)
        Dim lineNumber As Integer = 1
        Dim i As Integer = 0
    
        While i < index
            If text.Chars(i) = vbCr Then
                lineNumber += 1
                i += 1
            End If
    
            i += 1
        End While
    
        Return lineNumber
    End Function

    End Module

  5. Sauvegarder la macro et fermer l'éditeur

  6. Maintenant, attribuons un raccourci à la macro. Allez dans Outils->Options->Environnement->Clavier et recherchez votre macro dans la zone de texte "Afficher les commandes contenant".

  7. maintenant dans la zone de texte sous le "Press shortcut keys" vous pouvez entrer le raccourci souhaité. J'utilise Ctrl+M+E. Je ne sais pas pourquoi - je l'ai juste entré la première fois et je l'utilise maintenant :)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X