VS2008 автоматически форматирует мой javascript в файле .js, и я хочу, чтобы он остановился - PullRequest
4 голосов
/ 06 марта 2009

Дубликат: VS2008 Удаляет мои отступы в файле .js (отключите автоматическое форматирование на вкладке форматирования)

Привет, у меня VS2008 и ReSharper 4.0, и у меня проблема. Когда я ввожу новую строку кода в любой файл .js, он проходит и переформатирует все скобки JavaScript. Я нашел, где в ReSharper, где я могу установить поведение скобки для файлов C # (.cs). Я искал в VS2008 и не смог найти никаких настроек для кода JavaScript.

    function doSomething(withMe) 
    {
        for (idx in myArray) 
        {
            if (myArray[idx] != -1) 
            {
                return "yep";
            }
        }
        return "nope";
    }

Станьте этим (что мне нравится больше, но моей команде нравится вышеупомянутое)

    function doSomething(withMe) {
        for (idx in myArray) {
            if (myArray[idx] != -1) {
                return "yep";
            }
        }
        return "nope";      
    }

Становится больно возвращаться и заново добавлять CR везде. Где я могу найти место, чтобы остановить это безумие.

Ответы [ 2 ]

7 голосов
/ 06 марта 2009

Перейти в Инструменты -> Параметры.

Развернуть Текстовый редактор

Развернуть JScript

Снимите все опции форматирования.

alt text

4 голосов
/ 06 марта 2009

Для javascript вы должны привыкнуть ставить фигурные скобки в конец строки, как предлагает Visual Studio. Причина этого в том, что переводчик может иногда добавлять в; при интерпретации файла, который может привести к странному поведению. Например:

return
{
    'foo': 3
};

это возвращает неопределенный, а не хеш-литерал, как вы ожидаете, потому что интерпретатор превращает его в:

return;
{
    'foo': 3
};

Вы можете подумать, что я это выдумал. Уверяю вас, я не.

Я предлагаю вам обучить свою команду и привыкнуть к форматированию своего javascript, как предлагает VS. Это спасет вас от себя.

<Ч />

Кроме того, еще одна вещь. Вместо того, чтобы делать:

myArray[idx] != -1

Я предлагаю вам сделать:

myArray[idx] !== -1

Это остановит его от приведения типов. Infact ... никогда не используйте == или! = Всегда используйте === и! ==.

...