{"action":"created","issue":{"url":"https://api.github.com/repos/driftyco/ionic/issues/4963","labels_url":"https://api.github.com/repos/driftyco/ionic/issues/4963/labels{/name}","comments_url":"https://api.github.com/repos/driftyco/ionic/issues/4963/comments","events_url":"https://api.github.com/repos/driftyco/ionic/issues/4963/events","html_url":"https://github.com/driftyco/ionic/issues/4963","id":126698221,"number":4963,"title":"ionic serve only seems to refresh bundle.js on first change","user":{"login":"Barryrowe","id":1013426,"avatar_url":"https://avatars.githubusercontent.com/u/1013426?v=3","gravatar_id":"","url":"https://api.github.com/users/Barryrowe","html_url":"https://github.com/Barryrowe","followers_url":"https://api.github.com/users/Barryrowe/followers","following_url":"https://api.github.com/users/Barryrowe/following{/other_user}","gists_url":"https://api.github.com/users/Barryrowe/gists{/gist_id}","starred_url":"https://api.github.com/users/Barryrowe/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Barryrowe/subscriptions","organizations_url":"https://api.github.com/users/Barryrowe/orgs","repos_url":"https://api.github.com/users/Barryrowe/repos","events_url":"https://api.github.com/users/Barryrowe/events{/privacy}","received_events_url":"https://api.github.com/users/Barryrowe/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/driftyco/ionic/labels/v2","name":"v2","color":"313744"}],"state":"closed","locked":false,"assignee":{"login":"tlancina","id":804331,"avatar_url":"https://avatars.githubusercontent.com/u/804331?v=3","gravatar_id":"","url":"https://api.github.com/users/tlancina","html_url":"https://github.com/tlancina","followers_url":"https://api.github.com/users/tlancina/followers","following_url":"https://api.github.com/users/tlancina/following{/other_user}","gists_url":"https://api.github.com/users/tlancina/gists{/gist_id}","starred_url":"https://api.github.com/users/tlancina/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tlancina/subscriptions","organizations_url":"https://api.github.com/users/tlancina/orgs","repos_url":"https://api.github.com/users/tlancina/repos","events_url":"https://api.github.com/users/tlancina/events{/privacy}","received_events_url":"https://api.github.com/users/tlancina/received_events","type":"User","site_admin":false},"milestone":null,"comments":1,"created_at":"2016-01-14T16:57:32Z","updated_at":"2016-01-21T19:17:33Z","closed_at":"2016-01-21T19:17:32Z","body":"I'm having an issue where using ```ionic serve``` my first change will get picked up, and i'll see the output:\r\n\r\n    √ Webpack complete\r\n\r\n    JS changed:   d:\\git-repos\\armadilo\\www\\build\\js\\app.bundle.js\r\n\r\nHowever, on subsequent changes to the same file, the change is picked up and Webpack completes, but the \"JS changed\" never shows, and the new changes aren't served to the browser.\r\n\r\nI'm using typescript, and my ionic-config.js looks like:\r\n\r\n```JavaScript\r\nmodule.exports = {\r\n  proxies: null,\r\n\r\n  paths: {\r\n    html : {\r\n      src: ['app/**/*.html'],\r\n      dest: \"www/build\"\r\n    },\r\n    sass: {\r\n      src: ['app/theme/app.+(ios|md).scss'],\r\n      dest: 'www/build/css',\r\n      include: ['node_modules/ionic-framework']\r\n    },\r\n    fonts: {\r\n      src: ['node_modules/ionic-framework/fonts/**/*.ttf'],\r\n      dest: \"www/build/fonts\"\r\n    },\r\n    watch: {\r\n      sass: ['app/**/*.scss'],\r\n      html: ['app/**/*.html'],\r\n      livereload: [\r\n        'www/build/**/*.html',\r\n        'www/build/**/*.js',\r\n        'www/build/**/*.css'\r\n      ]\r\n    }\r\n  },\r\n\r\n  autoPrefixerOptions: {\r\n    browsers: [\r\n      'last 2 versions',\r\n      'iOS >= 7',\r\n      'Android >= 4',\r\n      'Explorer >= 10',\r\n      'ExplorerMobile >= 11'\r\n    ],\r\n    cascade: false\r\n  },\r\n\r\n  // hooks execute before or after all project-related Ionic commands\r\n  // (so not for start, docs, but serve, run, etc.) and take in the arguments\r\n  // passed to the command as a parameter\r\n  //\r\n  // The format is 'before' or 'after' + commandName (uppercased)\r\n  // ex: beforeServe, afterRun, beforePrepare, etc.\r\n  hooks: {\r\n    beforeServe: function(argv) {\r\n      //console.log('beforeServe');\r\n    }\r\n  }\r\n};\r\n\r\n```\r\n\r\nwebpack.config.js looks like:\r\n\r\n```JavaScript\r\nvar path = require('path');\r\n\r\n\r\nmodule.exports = {\r\n  entry: [\r\n    path.normalize('es6-shim/es6-shim.min'),\r\n    'reflect-metadata',\r\n    'web-animations.min',\r\n    path.normalize('zone.js/dist/zone-microtask'),\r\n    path.resolve('app/app')\r\n  ],\r\n  output: {\r\n    path: path.resolve('www/build/js'),\r\n    filename: 'app.bundle.js',\r\n    pathinfo: false // show module paths in the bundle, handy for debugging\r\n  },\r\n  module: {\r\n    loaders: [\r\n      {\r\n        test: /\\.ts$/,\r\n        loader: 'awesome-typescript',\r\n        query: {\r\n          'doTypeCheck': false,\r\n          useWebpackText: true\r\n        },\r\n        include: path.resolve('app'),\r\n        exclude: [/node_modules/, /spec\\.ts$/, /e2e\\.ts$/], \r\n      },\r\n      {\r\n        test: /\\.js$/,\r\n        include: path.resolve('node_modules/angular2'),\r\n        loader: 'strip-sourcemap'\r\n      }\r\n    ],\r\n    noParse: [\r\n      /es6-shim/,\r\n      /reflect-metadata/,\r\n      /web-animations/,\r\n      /zone\\.js(\\/|\\\\)dist(\\/|\\\\)zone-microtask/\r\n    ]\r\n  },\r\n  resolve: {\r\n    alias: {\r\n      'web-animations.min': path.normalize('ionic-framework/js/web-animations.min')\r\n    },\r\n    extensions: [\"\", \".js\", \".ts\"]\r\n  }\r\n};\r\n\r\n```"},"comment":{"url":"https://api.github.com/repos/driftyco/ionic/issues/comments/173678997","html_url":"https://github.com/driftyco/ionic/issues/4963#issuecomment-173678997","issue_url":"https://api.github.com/repos/driftyco/ionic/issues/4963","id":173678997,"user":{"login":"tlancina","id":804331,"avatar_url":"https://avatars.githubusercontent.com/u/804331?v=3","gravatar_id":"","url":"https://api.github.com/users/tlancina","html_url":"https://github.com/tlancina","followers_url":"https://api.github.com/users/tlancina/followers","following_url":"https://api.github.com/users/tlancina/following{/other_user}","gists_url":"https://api.github.com/users/tlancina/gists{/gist_id}","starred_url":"https://api.github.com/users/tlancina/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tlancina/subscriptions","organizations_url":"https://api.github.com/users/tlancina/orgs","repos_url":"https://api.github.com/users/tlancina/repos","events_url":"https://api.github.com/users/tlancina/events{/privacy}","received_events_url":"https://api.github.com/users/tlancina/received_events","type":"User","site_admin":false},"created_at":"2016-01-21T19:17:32Z","updated_at":"2016-01-21T19:17:32Z","body":"Hey this looks like a dup of an issue that was closed on the v2 repo recently, but since they've been closed and weren't migrated yet I can't reference it.\r\n\r\nCan you remove `useWebText: true` from your `awesome-typescript` loader query? It was determined that that is only necessary for ES6 starters, and actually causes the problem you're describing for the TypeScript starters.\r\n\r\nGoing to close this, but please let me know if you're still having issues and I can re-open."}}