我正在使用Angular CLI来构建我的Angular 4项目 . 我需要运行该应用程序
-
作为独立应用程序
-
作为嵌入在门户页面中的应用程序
该应用程序作为独立的应用程序运行良好 .
当嵌入在静态内容从CDN提供的门户中时,使用相对URL加载的资源不会被加载,因为它们嵌套在CDN下的不同根目录下 .
例如在我的独立应用程序中,我有一个背景图片,我在我的scss文件中引用为背景:url('/assets/images/bg.jpg') . 但是,嵌入门户网站时,相对URL为 /cdn/app /assets/images/bg.jpg .
有没有办法在 ng build 中更改SCSS和HTML中使用的相对URL?我可以定义一个保存我的CDN路径的变量吗?Angular-CLI在构建时用实际值替换变量?
例如
背景:网址('$cdnAppRoot/assets/images/bg.jpg');
换成了
背景:网址('/cdn/app/assets/images/bg.jpg')
1 回答
在为 生产环境 构建时,可以添加deploy-url参数来更改应从中读取资产的位置 .
我建议添加一个名为
prod
的新npm脚本,以使其更容易