Format zmiany kodu w programie Visual studio (React-JSX)

Mam następujący fragment w moim indeksie.js

class App extends Component {
    render() {
        return ( <div style = { styles.app } >
            Welcome to React!
            </div>
        )
    }
}


Kod działa, ale za każdym razem, gdy zapisuję (ctrl+s) format visual studio JSX w ten sposób:

class App extends Component {
    render() {
        return ( < div style = { styles.app } >
            Welcome to React!
            <
            /div>
        )
    }
}
Jak mogę to rozwiązać? dzięki
Author: GalAbra, 2017-07-09

13 answers

W końcu sztuczka polegała na zmianie formatu pliku z JavaScript na JavaScript React na dolnym pasku narzędzi. Publikuję go tutaj dla przyszłych odniesień, ponieważ nie znalazłem żadnej dokumentacji na ten temat.

Tutaj wpisz opis obrazka

Oprócz powyższego. Po kliknięciu ' Configure File Association for .js ' możesz ustawić wszystko .Pliki js do JavaScript react

 259
Author: omer727,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-05-03 09:22:29

Zmień ustawienia VSCode preferences > Ustawienia użytkownika poniżej:

"files.associations": {
        "*.js":"javascriptreact"
    }
 56
Author: dotdot,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-07-02 11:00:50

Możesz zapobiec nieprawidłowemu formatowaniu JSX przez VSC, dodając skojarzenie w Ustawieniach .json

Code > Preferences > Settings

W oknie Ustawienia wyszukaj skojarzenia , Kliknij Edytuj w Ustawieniach.json a następnie dodać:

"files.associations": {
    "*.js": "javascriptreact"
}
 29
Author: jadeallencook,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-05-23 16:44:54

Ewentualnie zapisanie pliku za pomocą .rozszerzenie jsx rozwiązuje to w vscode.

Miałem to samo wyzwanie i mam nadzieję odkryć lepszy sposób radzenia sobie z tym problemem w vscode.

Zauważyłem, że sugerowana przez Ciebie praca musi być wykonywana za każdym razem, gdy otwierasz plik reactowy z rozszerzeniem .js

 12
Author: twumm,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-07-14 22:21:20

Upewnij się, że nie masz włączonych wielu formaterów javascript w bieżącej przestrzeni roboczej. (Musisz wyłączyć Pozostałe z nich dla bieżącej przestrzeni roboczej).

React-beautify przeważnie robi magię, ale zawodzi, jeśli masz już zainstalowany inny program do formatowania/upiększania JS.

W moim przypadku miałem zainstalowane react-beautify i rozszerzenie Formatera JS-CSS-HTML. Musiałem wyłączyć formatowanie JS-CSS-HTML dla mojego obecnego obszaru roboczego.

 5
Author: Ozesh,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-10-22 05:28:15

Zainstaluj ładniejszy (jeśli nie jest zainstalowany domyślnie) i spróbuj dodać go do ustawień użytkownika lub miejsca pracy:

"prettier.jsxBracketSameLine": true

Nie umieszczaj linebreak pomiędzy return a zwracanym wyrażeniem JSX.

Uruchom autoformat (Alt+Shift+F) i sprawdź, czy działa.

 5
Author: Janos,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-03-26 18:37:38

Zmagałem się z tym, ale w końcu znalazłem rozwiązanie. To moje ustawienia.json

{
    "terminal.integrated.shell.windows": "C:\\Program Files\\Git\\bin\\bash.exe",
    "workbench.startupEditor": "welcomePage",
    "window.zoomLevel": 1,
    "emmet.includeLanguages": {
        "javascript": "javascriptreact",
        "vue-html": "html"
    },
    "editor.formatOnSave": true,
    "javascript.updateImportsOnFileMove.enabled": "always",
    "editor.wordWrap": "on",
    "editor.tabSize": 2,
    "editor.minimap.enabled": false,
    "workbench.iconTheme": "vscode-icons",
    "eslint.autoFixOnSave": true,
    "eslint.alwaysShowStatus": true,
    "beautify.ignore": [
        "**/*.js",
        "**/*.jsx"
    ],
    "prettier.jsxSingleQuote": true,
    "prettier.singleQuote": true
}

Dodałem

"beautify.ignore": ["**/*.js","**/*.jsx"]
 5
Author: Loc Mai,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-03-09 04:57:22

Możesz zainstalować rozszerzenie takie jak react-beautify, które pomaga sformatować kod jsx.

Znajduje się TUTAJ

To rozszerzenie owija prettydiff / esformatter do formatowania plików javascript, JSX, typescript, TSX.

 1
Author: Tal Avissar,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-07-09 06:54:17

Miałem podobny problem, potem okazało się, że jest to spowodowane rozszerzeniem "upiększania". Po odinstalowaniu rozszerzenia wszystko działa dobrze.

 1
Author: Akrom Sprinter,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-08-06 13:34:16

Musiałem wyłączyć rozszerzenie Formatera JS-CSS-HTML w VSC. jedyne rozwiązanie tego problemu

 1
Author: JamalGhafari,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-04-08 13:42:32

Właśnie dodałem wszystkie wyżej wymienione kombinacje.

  1. dodał to
"files.associations": {
    "*.js": "javascriptreact"
}
  1. dodano również
"beautify.ignore": ["**/*.js","**/*.jsx"]
  1. usunięto dodatkowe formatowanie js
  2. zainstalowany ładniejszy
  3. Włącz ładniejsze i formatowanie
 1
Author: jamil_4128,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-07-11 15:44:38

Ładniejszy jest formaterem kodu. Wymusza spójny styl przez parsowanie kodu i ponowne wydrukowanie go z własnymi regułami, które uwzględniają maksymalną długość linii, owijając kod w razie potrzeby. include : JavaScript Maszynopis Przepływ JSX JSON CSS SCSS Mniej HTML Vue Kątowe GraphQL Markdown YAML https://marketplace.visualstudio.com/items?itemName=esbenp.prettier-vscode

 0
Author: Laxifan,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-10-14 22:24:34

Po przeczytaniu wielu wspaniałych sugestii i obejść, odkryłem, że mogę po prostu umieścić strzałkę myszy w dół nad jasnym niebieskim poziomym paskiem na dole okna edytora kodu VSCode-kliknij prawym przyciskiem myszy-co otwiera okno wyskakującej listy - i odznaczyć = "wcięcia edytora".

 0
Author: Tim Conroy,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-12-12 14:48:51