#javascript #ecmascript-6 #requirejs
#javascript #ecmascript-6 #requirejs
Вопрос:
У меня есть подобный код, который мне нужно поместить в устаревший проект, использующий RequireJS. Я пытался использовать Babel, но на самом деле мне не нужен весь класс, перенесенный в ES5, мне просто нужно, чтобы он был в стиле AMD RequireJS.
Есть ли рекомендуемый инструмент для преобразования подобных модулей ES6 или я должен просто переписать их вручную? Я не знаю, как переписать следующее для RequireJS.
import CanvasTile from './maputil.js';
export default class MapView {
constructor(opts) {
//create map
}
async getImage(sceneId, url, hasOvr = true) {}
}
.babelrc, который я пробовал, был
{
"presets": ["es2015"],
"plugins": ["transform-es2015-modules-amd"]
}
Комментарии:
1. … почему? Не забывайте, что, несмотря на все пакеты, вы все еще просто создаете веб-страницу , поэтому просто импортируйте модуль самостоятельно с обычным
<script src="./js/maputil.js" type="module" async></script>
тегом, вместо того, чтобы вставлять его в свой пакет, а затем получать к нему доступ черезwindow
?
Ответ №1:
В итоге я использовал https://babeljs.io/repl с помощью плагина «babel-plugin-transform-modules-requirejs v0.1.4», чтобы помочь выяснить, как заставить вышеуказанное работать в RequireJS.