React ignore .prettierignore файл [Обновлено: ничего общего с красивее]

Я отчаянно пытаюсь сохранить некоторые escape-символы (\) в файле js в моем проекте React js, потому что они мне нужны. Но кто-то их автоматически удаляет, я думаю, это красивее. Вот мой конфиг:

└── src
|   └── folder
|       └── fileToIgnore.js
├──.prettierrc
├──.prettierignore
├── package.json

В моем package.json у меня вот такое:

{
  "lint-staged": {
    "*.{js,json,css,md}": [
      "prettier --write",
      "git add"
    ],
  },
  "dependencies": {
    "react": "^16.6.0",
    "react-dom": "^16.6.0",
    ...
  },
  "devDependencies": {
    "husky": "^0.14.3",
    "lint-staged": "^7.1.2",
    "prettier": "1.13.2",
    "source-map-explorer": "^1.6.0"
  },
  "scripts": {
    "precommit": "lint-staged",
    "start": ". ./scripts/build-vars.sh && react-scripts start",
   ...
  }
}

В моем fileToIgnore.js есть вот что:

/* eslint-disable no-useless-escape */

export const setClickTag = `'use strict';function getParameterByName(a){var b=RegExp('[?&]'+a+'=([^&]*)').exec(window.location.search);return b&&decodeURIComponent(b[1].replace(/\+/g,' '))}var clickTag=getParameterByName('clickTag');`;

В моем .prettierrc есть что

singleQuote: true
trailingComma: all
printWidth: 120

РЕШЕНИЕ 1 Я попытался создать файл .prettierignore с этим:

/src/folder/fileToIgnore.js    
**/src/folder/fileToIgnore.js
src/folder/fileToIgnore.js
src/folder/*.js

но это не сработало

РЕШЕНИЕ 2 Я добавил // prettier-ignore перед каждой переменной, которую хотел игнорировать, но это не сработало.

РЕШЕНИЕ 3 Я пробовал модифицировать packager.json вот так:

  "lint-staged": {
    "*.{js,json,css,md}": [
      "prettier --write",
      "git add"
    ],
    "ignore":["**/src/folder/fileToIgnore.js"]
  },

но это тоже не было решением.

Я действительно застрял здесь, я думаю, может быть, React перезаписывает некоторые параметры? Или нет ? Я потерян ! Спасибо за вашу помощь !!

Вы предоставили здесь много деталей, одна вещь, которую вы полностью забыли включить, - это пример, в котором вы хотите использовать `\` в своих файлах JS.

Keith 17.12.2018 16:22

ну, я бы все равно задал этот вопрос, из-за сложности этого! Но если вы спросите, я помещаю содержимое файла в содержание своего сообщения. Даже если бы я мог использовать другой метод, отличный от Regex, для достижения своей цели, я действительно хотел бы понять, как сделать так, чтобы красивее работало правильно!

arnaudambro 17.12.2018 16:25
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
2
836
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Это не имеет ничего общего с prettier, теперь вы представили пример, на котором легко увидеть, что вы не избегаете своих строк.

Вы не можете сделать просто \ в JS, чтобы сделать обратную косую черту в JS внутри строки, вам нужно использовать \\.

Теперь, имея это в виду, внутри вашей строки у вас есть -> replace(/\+/g,' '), это должно быть replace(/\\+/g,' ') из-за экранирования строки.

Большое спасибо !

arnaudambro 17.12.2018 17:05

Другие вопросы по теме