2016-11-06 37 views
0

我正在使用ASP.Net Core,Angular2和Typescript,并使用来自Angular2团队here的教程与webpack连接在一起。这一切似乎工作,但现在我需要建立每次我改变一个文件。如何使用webpack进行开发Angular2/typescript无需每次运行构建?

原始教程使用system.js,当然加载大量文件,但我只是使用静态文件中间件,并且不需要构建开发。这非常方便,但我无法弄清楚如何对webpack进行相同操作。看起来webpack只能将所有东西捆绑在一起,而没有单独加载所有东西的选项,所以我需要每次运行构建。

是否有可能做一些事情,以便webpack以某种简单的方式“扩展”软件包?

P.S.我不想使用webpack dev服务器和一些保存等自动构建,因为复杂性是相当高的。所以理想的解决方案是我有捆绑生产,但直接代码加载开发,就像过去的标准mvc捆绑一样。

回答

1

真的,最好的方法是使用webpack dev服务器。这确实没有参与太多的设置,只是在运行,而不是一个的WebPack不同的命令:

npm install webpack-dev-server 
webpack-dev-server webpack.config.js 

然后你只要点脚本来源http://localhost:8080/webpack-dev-server/your-bundle-name.js" in your application`标签。

这是迄今为止最好的选择,因为您可以立即进行增量重新编译和实时重新加载。

虽然我强烈建议您使用webpack-dev-server你也可以只使用普通的WebPack手表模式:

webpack ---watch 

有没有办法“扩大了包”(和真的没有必要)。例如,在所有可能的情况下,您使用webapack不仅仅是捆绑销售,所以如果您更改打印稿文件,仍然需要重新构建。在手表模式下的Webpack开发服务器或webpack可以进行非常快速的增量编译,大多数人只会在开发时让它们运行。

+0

如果我更改打字稿文件,VS会自动重新编译它,所以这根本不是问题。但是,如果我在同一个项目中使用WebApi,那么运行webpack dev是不够的,我需要运行另一台服务器,再加上以某种方式重新路由所有的url,这是我想避免的一点点痛苦:)谢谢对于输入而言毫无疑问,也许根本没有办法做到我想要的。 –

+0

Webpack开发服务器总是作为一个单独的服务器运行,只提供webpack的东西。我使用的是aspnet mvc和webapi,我们只是为我们的主index.html提供了一个模板,可以从dev的webpack url中加载这个bundle。 – dtabuenc

+0

在任何情况下,标准webpack中的“watch”模式应该可以工作,你只是没有得到live-reload,并且它稍微慢一些,因为它不从RAM – dtabuenc

相关问题