2

I am getting this error when I load the application. I have referred the router references : 3.0.0-beta.1

The error in the browser console on the loading of the application

index.html:24 Error: SyntaxError: Unexpected token <
        at Object.eval (http://localhost:49928/app/main.js:7:36)
        at eval (http://localhost:49928/app/main.js:14:4)
        at eval (http://localhost:49928/app/main.js:15:3)
    Evaluating http://localhost:49928/lib/@angular/platform-browser-dynamic/platform-browser-dynamic.umd.js
    Evaluating http://localhost:49928/app/main.js
    Error loading http://localhost:49928/app/main.js

In the error message it states that "Evaluating http://localhost:49928/lib/@angular/platform-browser-dynamic/platform-browser-dynamic.umd.js", but in my wwwroot/lib/@angular/platform-browser-dynamic folder there is no *.umd.js file exists. How do I get this file in that location?

My menu router provider component

import { provideRouter, RouterConfig } from '@angular/router';

import { AboutComponent} from './About';
import { AboutHomeComponent } from './AboutHome';
import { AboutItemComponent } from './AboutItem';
import { HomeComponent } from './Home';

export const routes: RouterConfig = [
    { path: '', component: HomeComponent },
    {
            path: 'about',
            component: AboutComponent,
            children: [
                { path: '', component: AboutHomeComponent },
                { path: 'item/:id', component: AboutItemComponent }
            ]
        }
];

export const APP_ROUTER_PROVIDERS = [
    provideRouter(routes)
];

My package.json is

{
  "name": "Firebolkt",
  "version": "1.0.0",
  "dependencies": {
    "@angular/common": "2.0.0-rc.4",
    "@angular/compiler": "2.0.0-rc.4",
    "@angular/core": "2.0.0-rc.4",
    "@angular/http": "2.0.0-rc.4",
    "@angular/platform-browser": "2.0.0-rc.4",
    "@angular/platform-browser-dynamic": "2.0.0-rc.4",
    "@angular/router": "3.0.0-beta.1",
    "@angular/router-deprecated": "2.0.0-rc.2",
    "@angular/upgrade": "2.0.0-rc.1",
    "@angular/forms": "0.2.0",
    "systemjs": "0.19.27",
    "core-js": "^2.4.0",
    "reflect-metadata": "^0.1.3",
    "rxjs": "5.0.0-beta.6",
    "zone.js": "^0.6.12",
    "bootstrap": "^3.3.6"
  },
  "devDependencies": {
    "gulp": "^3.9.1",
    "q": "^1.4.1",
    "rimraf": "^2.5.2"
  }
}

My systemjs.config.js

(function (global) {
    // map tells the System loader where to look for things
    var map = {
        'app': 'app', // 'dist',
        '@angular': 'lib/@angular',
        'rxjs': 'lib/rxjs'
    };
    // packages tells the System loader how to load when no filename and/or no extension
    var packages = {
        'app': { main: 'main.js', defaultExtension: 'js' },
        'rxjs': { defaultExtension: 'js' }
    };
    var ngPackageNames = [
      'common',
      'compiler',
      'core',
      'http',
      'platform-browser',
      'platform-browser-dynamic',
      'router',
      'router-deprecated',
      'upgrade',
    ];
    // Add package entries for angular packages
    ngPackageNames.forEach(function (pkgName) {
        packages['@angular/' + pkgName] = { main: pkgName + '.umd.js', defaultExtension: 'js' };
    });
    var config = {
        map: map,
        packages: packages
    }
    System.config(config);
})(this);

I even tried clearing the node_modules and wwwroot/lib folders and executed again, still I am getting the same error. any ideas why I am getting this error?

Krishnan
  • 958
  • 5
  • 21
  • 44

1 Answers1

3

You get the error, because it tries to parse a html 404 response.

Your systemJS config is broken. all the *.uml.js files are inside a bundles folder. So you have to add the bundles path in your function:

packages['@angular/' + pkgName] = { main: 'bundle/'+ pkgName + '.umd.js', defaultExtension: 'js' };
Dinistro
  • 5,701
  • 1
  • 30
  • 38
  • To the downvoter: Please tell what's bad about this answer. I can not improve it, if you don't tell me.... – Dinistro Jul 11 '16 at 09:50
  • 1
    I have accepted your answer and upvoted it. I did the changes suggested by you in systemjs.config.js and it worked well. My basic menu/routing is working. Thanks for your help and please continue helping others who are learning and need of help :) – Krishnan Jul 11 '16 at 19:54