Я обновляюсь с Material-UI 0.x до 1.0.
Документы для помощник по миграции говорят, что нужно запустить:
jscodeshift -t <codemod-script> <path>.
Я никогда раньше не использовал jscodeshift и никогда раньше не видел нотации, поэтому хотел бы получить несколько советов о том, как это использовать. :) Погуглил jscodeshift codemod-script ничего актуального не обнаружил.
Каким должен быть codemod-script?





Мне потребовалось немного времени, чтобы понять это. После того, как вы установили jscodeshift и codemods material-ui, команда должна быть отформатирована следующим образом:
jscodeshift -t <the file path of the specific code mod file> <the location of the files you want to process>
jscodeshift -t ./node_modules/@material-ui/codemod/lib/v1.0.0/svg-icon-imports.js ./src/
Я также использую расширение jsx для своих файлов, поэтому мне пришлось добавить флаг --extensions:
jscodeshift -t ./node_modules/@material-ui/codemod/lib/v1.0.0/svg-icon-imports.js ./src/ --extensions jsx
Все сразу, насколько я могу судить, но я только что запустил его сам, так что я не уверен на 100%.
Пример команды в вашем сообщении, jscodeshift -t ./node_modules/@material-ui/codemod/lib/v1.0.0/svg-icon-imports.js ./src/ --extensions jsx, похоже, предназначен только для одного файла m-ui, svg-icon-imports.js ./. Вот почему у меня создалось впечатление, что я запускаю его один раз для каждого файла m-ui. Я что-то пропустил? Заранее спасибо за ваши мысли.
О да, я мог заставить его запускать только один код-мод за раз. Честно говоря, я нашел их довольно глючными и не очень полезными. Я запустил их, но все еще делаю 90% работы вручную.
Очень хороший. Могу ли я запускать его один раз для каждого импортируемого файла m-ui, например
material-ui/List,material-ui/Avatarи т. д.?