I have generated a typescript project using angular2 CLI (ember cli). I am using Chromium Web Developer tools to debug. I have \"enable javascript source maps\" selected i
It seems like basic configuration of Angular CLI uses Webpack and all TypeScript files can be found in its src
directory, thus allowing one to put a breakpoint without making use of debugger statement.
I'm the original poster and supplier of the answer posted on 2016-06-04.
I have recently discovered a simpler way to get this working. I am posting this as a second answer because my original answer still works, and some people might prefer it. However, I think the new way I'm about to describe is a little easier.
Basically, you can set up everything under the DeveloperTools->Settings->Workspace menu, instead of right-clicking on everything. The right-clicking of my original answer is essentially just another way to populate this workspace form.
Here are some screen prints for when your server and browser are running on the same machine:
Here are some screen prints for when your server and browser are running different machines:
From a windows command prompt (actually git bash shell):
>$ net view
Server Name Remark
-------------------------------------------------------------------------------
\\VT-VIRTUAL vt-virtual-machine server (Samba, Linux Min
The command completed successfully.
>$ net use l: '\\vt-virtual\vtstuff'
Doing it this way retains the information across browser cyclings, so you should only need to do it once. Perhaps the person who posted on 2016-07-30, where he said it worked for him "out of the box", somehow had this workspace form already set up.
I now understand this to be a Chrome Developer Tools setup issue and has nothing to do with Angular2 or Angular2 CLI. It's just that people who use angular2 CLI need to do this workspace mapping because the source (.ts) files are not directly available in the runtime (dist) directory.
I was able to get this to work. You have to to add the angular CLI src folder to your workspace, and then you have "map to network resource" on one of your .ts files.
Note: this example assumes the case where the client and server are running on the same machine. If you have the situation where the client is on a windows machine, but the server is running on linux for example, then on the client machine you have to mount the linux server source directory as a windows share and then specify something like
\\192.168.1.134\myShare\myProject\src\client
as your workspace folder.
I recently had to do this, and while it's a little more complicated, it fundamentally works the same as the local case
I took screen shots of the entire process, so it's probably easiest just to show these.
Select your src/client folder:
Say "Allow" to the subsequent prompt allowing dev tools to access the src dir:
Observe that the src folder is now listed under Dev Tools sources. You can now browse all the ts files (not just the one you added), but any breakpoints you set won't take effect until you "establish a mapping":
You can enable the mapping as shown in the next two screen prints:
Select the appropriate mapping and click on it to enable
Now I can set a breakpoint in the .ts file and drill down on error messages to the .ts source.
The basic trick is the you have to add the source ts file directory to Chrome manually, since the files are not under the serving directory. The mapping stays in effect until you either manually remove it (by right-clicking on a .ts file and selecting "remove network mapping") or until you close the browser (it will retain the mapping on refreshes however)
Not sure what the issue was but I did not encounter that. It worked right out of the box, no convoluted five-step process required.
The .ts files are not and should not be copied to the /dist folder. What is being copied are the .map files containing a reference back to your source folder. Chrome developer tools shows all the .ts files under its Sources tab -- orange folders.
I took no action other than to run "ng serve", browse to http://localhost:4200 and open developer tools. I can open one of the listed .ts files (they are listed in the orange folders), set breakpoints, etc.