Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript ASP.NET核心-运行多个angular 2应用程序_Javascript_Node.js_Angular_Model View Controller_Asp.net Core - Fatal编程技术网

Javascript ASP.NET核心-运行多个angular 2应用程序

Javascript ASP.NET核心-运行多个angular 2应用程序,javascript,node.js,angular,model-view-controller,asp.net-core,Javascript,Node.js,Angular,Model View Controller,Asp.net Core,我在尝试使用ASP.NET内核运行多个angular 2应用程序时遇到了一些问题。我正在使用 具有预呈现功能的JavaScriptServices 在Visual Studio 2015模板中 我的解决方案的结构是 核心使用服务器端路由连接ASP.NET应用程序,每个客户端应用程序一旦绑定,就会复制到wwwroot中 这里的问题是预渲染功能,它出现了: 预渲染失败,原因是错误:错误:区域已加载 在第一次呈现ClientApp1后重新加载页面或尝试在ClientApp1和ClientApp2之间切

我在尝试使用ASP.NET内核运行多个angular 2应用程序时遇到了一些问题。我正在使用

具有预呈现功能的JavaScriptServices

在Visual Studio 2015模板中

我的解决方案的结构是

核心使用服务器端路由连接ASP.NET应用程序,每个客户端应用程序一旦绑定,就会复制到wwwroot中

这里的问题是预渲染功能,它出现了:

预渲染失败,原因是错误:错误:区域已加载

在第一次呈现ClientApp1后重新加载页面或尝试在ClientApp1和ClientApp2之间切换时,会发生这种情况

有人能帮我建议一下使用引导服务器和引导客户机风格运行多个Angular2应用程序的正确方法吗

如有任何示例/建议,将不胜感激


这个问题也在github的

中提出,我使用的方法似乎是在webpack配置中简单地定义多个入口点

const clientBundleConfig = {
  entry: {
    'front': './client/front/main.ts',
    'admin': './client/admin/main.ts',
  },
  output: {
    path: './www/dist',
    filename: '[name].bundle.js'
  }
  ...
}
现在,相关的angular应用程序front或admin将从单个HMR进程更新。我无法让它使用同一个dotnet服务器进程来处理单独的webpack config和HMR进程,我发现只有第一个应用程序会更新

更新 由于遇到的限制,我需要为应用程序执行单独的构建。我现在按照Stevesandersons的建议,为您链接到的Github问题中的每个应用程序调用UseWebpackDevMiddleware,他的建议中缺少的唯一一步是需要为每个应用程序指定唯一的端点:

app.UseWebpackDevMiddleware(new WebpackDevMiddlewareOptions
{
    HotModuleReplacement = true,
    ConfigFile = "webpack.front.js",
    HotModuleReplacementEndpoint = "/__webpack_hmr_front"
});

app.UseWebpackDevMiddleware(new WebpackDevMiddlewareOptions
{
    HotModuleReplacement = true,
    ConfigFile = "webpack.admin.js",
    HotModuleReplacementEndpoint = "/__webpack_hmr_admin"
});

我使用的方法似乎是在webpack配置中简单地定义多个入口点

const clientBundleConfig = {
  entry: {
    'front': './client/front/main.ts',
    'admin': './client/admin/main.ts',
  },
  output: {
    path: './www/dist',
    filename: '[name].bundle.js'
  }
  ...
}
现在,相关的angular应用程序front或admin将从单个HMR进程更新。我无法让它使用同一个dotnet服务器进程来处理单独的webpack config和HMR进程,我发现只有第一个应用程序会更新

更新 由于遇到的限制,我需要为应用程序执行单独的构建。我现在按照Stevesandersons的建议,为您链接到的Github问题中的每个应用程序调用UseWebpackDevMiddleware,他的建议中缺少的唯一一步是需要为每个应用程序指定唯一的端点:

app.UseWebpackDevMiddleware(new WebpackDevMiddlewareOptions
{
    HotModuleReplacement = true,
    ConfigFile = "webpack.front.js",
    HotModuleReplacementEndpoint = "/__webpack_hmr_front"
});

app.UseWebpackDevMiddleware(new WebpackDevMiddlewareOptions
{
    HotModuleReplacement = true,
    ConfigFile = "webpack.admin.js",
    HotModuleReplacementEndpoint = "/__webpack_hmr_admin"
});