SystemJS, настройка синхронизации браузера

Я пытаюсь следовать руководству по настройке angular 2, и у меня возникают проблемы. Я использую браузерную синхронизацию и не могу понять, как заставить этот код работать.

 <script>
   .......
  System.import('./app/boot')
        .then(null, console.error.bind(console));
  </script>

Приложение не может найти /app/boot.js, потому что я обслуживаю приложение, используя процесс сборки gulp. Я не могу получить доступ к каким-либо каталогам с помощью моего процесса сборки "gulp serve", и используется синхронизация браузера. Как я могу использовать SystemJS в сочетании с синхронизацией браузера, чтобы он мог найти мой файл boot.js?

Извините, если это простой вопрос. Я новичок в этом процессе сборки, и обычно было бы просто включить файл. Спасибо.


person John Edwards    schedule 22.01.2016    source источник


Ответы (2)


Ну, вы не публикуете свой код, откуда мы обнаруживаем, какая ошибка в вашем коде. но да, gulp с browsersync — очень хорошая комбинация для бесперебойной работы нашего проекта. я думаю, что вы неправильно импортируете файл начальной загрузки, это может быть ошибкой.

все еще я использовал ту же настройку проекта для моего проекта. я использовал задачу gulp с синхронизацией браузера в angular2, вы можете обратиться за помощью к моему репозиторию. это репо может помочь вам понять, в чем ошибка

https://github.com/MrPardeep/Angular2-DatePicker

person Pardeep Jain    schedule 22.01.2016
comment
stackoverflow.com /questions/34895369/ надеюсь, это поможет вам! - person Pardeep Jain; 22.01.2016
comment
а также не пропустите это потрясающее видео, чтобы посмотреть рабочий процесс с gulp. youtube.com/watch?v=7xOubdqyqaY - person Pardeep Jain; 22.01.2016

У меня были аналогичные проблемы после изменения процесса сборки, чтобы скомпилировать все в папку dist вместо root. Я попытался настроить baseUrl в System.config, добавить карты, пути, вручную добавить расширение .js для импорта и т. д.

Уроки, которые я усвоил:

  1. Последовательность загрузки скриптов и настройки библиотек имеет решающее значение.
  2. System.config необходимо установить перед включением библиотек Rx и angular.
  3. Затем вы можете импортировать и загружать приложение.

Следуя совету @pardeep-jain посмотреть его репозиторий datepicker, это сработало для меня.

<!-- 1. Load libraries -->
<!-- IE required polyfills, in this exact order -->
<script src="js/libs/es6-shim.min.js"></script>
<script src="js/libs/system-polyfills.js"></script>
<script src="js/libs/angular2-polyfills.js"></script>
<script src="js/libs/system.src.js"></script>

 <script>
    System.config({
        defaultJSExtensions: true,
         map: {
            rxjs: '/node_modules/rxjs'
        },
        packages: {
            rxjs: {
            defaultExtension: 'js'
            }
        }
    });
  </script>

<script src="js/libs/Rx.js"></script>
<script src="js/libs/angular2.dev.js"></script>
<script src="js/libs/router.dev.js"></script>
<script src="js/libs/http.dev.js"></script>

<script>
    System.import('js/boot');
</script>

<link rel="stylesheet" href="css/app.css">
</head>
<base href="/">
<!-- 3. Display the application -->
<body>
<app>Loading...</app>
person digitalcraft    schedule 22.03.2016