Определить точку входа в устаревшем приложении Grunt/Angular для babel-pollyfill
Я работаю с унаследованным приложением, которое мы медленно тянем к более современным библиотекам и т. Д. (Я говорю это заранее, чтобы попытаться предотвратить любые ответы "просто обновить до webpack/yarn/etc". Мы работаем над этим, постепенно.)
Краткое описание проблемы:
Я успешно включил "grunt-babel": "^7.0.0", (я вижу, что он отлично работает с тестом let testBabel = 1
преобразование). Мне также требуется "babel-polyfill": "^6.26.0","для обработки таких вещей, как .includes()
& Функция Array, которую я извлек через мой пакет.json "зависимости" (а не "devDependencies", как мне указали в документации). Моя настоящая проблема должна быть довольно простой: у меня нет понимания правильного способа "загрузить это через файл ввода" для набора библиотек, который я использую.
Угловой v1.5
Моя настройка:
package.json
"devDependencies": {
"babel-core": "^6.26.0",
"babel-preset-env": "^1.6.1",
"grunt": "^0.4.5",
"grunt-babel": "^7.0.0",
"grunt-contrib-concat": "^0.5.1",
"grunt-contrib-copy": "^0.8.0",
"grunt-contrib-sass": "^0.9.2",
"grunt-contrib-uglify": "^0.9.1",
"grunt-contrib-watch": "^0.6.1",
"grunt-shell": "^2.1.0",
"load-grunt-tasks": "^3.5.2"
},
"dependencies": {
"babel-polyfill": "^6.26.0",
"d3-selection-multi": "~1.0.1",
"node-bourbon": "^1.2.3"
}
GruntFile.js
src: [
'./app/vinoEZ/javascripts/__header/jquery/jquery_number.js',
'./app/vinoEZ/javascripts/__header/jquery/hottie.js',
'./bower_components/localforage/dist/localforage.js',
'./bower_components/moment/min/moment.min.js',
'./app/vinoEZ/javascripts/__header/polyfill/entry.js',
'./app/vinoEZ/javascripts/__header/polyfill/eventsource.js',
'./bower_components/bootstrap-datepicker/dist/js/bootstrap-datepicker.js',
'./bower_components/smalot-bootstrap-datetimepicker/js/bootstrap-datetimepicker.js',
'./app/vinoEZ/javascripts/__header/underscore/underscore.js',
'./app/vinoEZ/javascripts/__header/myapp/base.js',
],
dest: './public/javascripts/myapp.head.min.js',
("myapp" является заменой названия нашей компании). pollyfill/eventsource.js
существовал, и поэтому я работал с pollyfill/entry.js
как некоторые из моих экспериментов - это может не понадобиться в конце.
Кроме того, у нас есть app.js
файл со всеми нашими angular.module
загрузка и директивные вещи.
Что я пробовал:
Я пробовал добавлять require("babel-polyfill");
как первая строка внутри моего module.exports = function(grunt) {
- это, кажется, игнорируется, и мне все равно сказали, что это неправильно
Я пробовал добавлять require("babel-polyfill");
а также import "babel-polyfill";
внутри этого entry.js, который, очевидно, не будет работать и не работает (синтаксическая ошибка, поскольку javascript не понимает)
Я попытался добавить то же самое в начало файла angular app.js, но это просто взорвало мой angular.
На самом деле ищите "напишите здесь эти слова", решите для меня ответ, так как я почти уверен, что это чертовски простая вещь, если вы знаете, что печатать, но я в растерянности.
ТИА!
1 ответ
В конце концов, кажется, что прямая ссылка - это самый простой способ справиться с этим, тем более что мы постепенно обновляем всю систему.
CDN для всех, кто заинтересован: https://cdn.polyfill.io/v2/docs/