Angular 在本地IIS上加载区块失败
上下文:Asp.Net核心,在本地IIS上发布,网页包 所以我在上托管了我的一个网站。(本地IIS) 对于主页(仪表板),一切正常 当我尝试访问另一个组件时,我会收到一个到的请求,而不是wanvet是我的本地iis别名(文件夹) 以下是追加调用的脚本: BaseURI是: src如下所示: 以下是控制台例外: 我想解决这个问题的一个方法是在上托管站点,但我真的不喜欢 从根目录成功请求js、css:Angular 在本地IIS上加载区块失败,angular,iis,asp.net-core,webpack,angular2-routing,Angular,Iis,Asp.net Core,Webpack,Angular2 Routing,上下文:Asp.Net核心,在本地IIS上发布,网页包 所以我在上托管了我的一个网站。(本地IIS) 对于主页(仪表板),一切正常 当我尝试访问另一个组件时,我会收到一个到的请求,而不是wanvet是我的本地iis别名(文件夹) 以下是追加调用的脚本: BaseURI是: src如下所示: 以下是控制台例外: 我想解决这个问题的一个方法是在上托管站点,但我真的不喜欢 从根目录成功请求js、css: 稍后编辑:添加一个答案,修改输出公共路径。我仍然期待其他意见。下面是一个经过检验的想法 在
稍后编辑:添加一个答案,修改输出公共路径。我仍然期待其他意见。下面是一个经过检验的想法 在webpack.config中,我们可以定义一个appName变量,该变量将表示IIS中用于部署应用程序的别名(文件夹) 当我们创建publicPath属性时使用它
var isDevBuild = process.argv.indexOf('--env.prod') < 0;
var appName = 'wanvet'; // folder name in local IIS
var publicPath = isDevBuild ? '/dist/' : '/' + appName + '/dist/';
module.exports = merge({
........
entry: {
'main': './Client/main.ts'
},
output: {
path: path.join(__dirname, '../wwwroot', 'dist'),
filename: '[name].js',
publicPath: publicPath
},
........
}, isDevBuild ? devConfig : prodConfig)
var isDevBuild=process.argv.indexOf('--env.prod')<0;
var appName='wanvet';//本地IIS中的文件夹名称
var publicPath=isDevBuild?“/dist/':'/'+appName+'/dist/';
module.exports=合并({
........
条目:{
“main”:“./Client/main.ts”
},
输出:{
path:path.join(uu dirname,'../wwwroot,''dist'),
文件名:'[name].js',
公共路径:公共路径
},
........
},isDevBuild?devConfig:prodConfig)
当然,您可以在dev/prod配置、dev'/dist/'
和prod'/appName/dist/'
中定义publicPath