Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.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 使用Angular cli向Angular中的静态文件添加前缀路径_Javascript_Django_Angular_Typescript_Angular Cli - Fatal编程技术网

Javascript 使用Angular cli向Angular中的静态文件添加前缀路径

Javascript 使用Angular cli向Angular中的静态文件添加前缀路径,javascript,django,angular,typescript,angular-cli,Javascript,Django,Angular,Typescript,Angular Cli,我有一个现有的django项目,我在其中通过/static/path提供静态文件。我正在将应用程序的一部分迁移到angular2,这是该站点的特定移动版本 将添加到index.html将加载静态文件www.example.com/main.js在此处获取404。 将添加到index.html可以正确加载静态文件,但是当应用程序启动时,它会将url更改为/static/(我正在使用路由器),尽管我的url应该是/order/ 是否有一种方法可以使用base href作为/但使用angular cl

我有一个现有的django项目,我在其中通过/static/path提供静态文件。我正在将应用程序的一部分迁移到angular2,这是该站点的特定移动版本

添加到index.html将加载静态文件www.example.com/main.js在此处获取404。 将
添加到index.html可以正确加载静态文件,但是当应用程序启动时,它会将url更改为/static/(我正在使用路由器),尽管我的url应该是/order/

是否有一种方法可以使用base href作为/但使用angular cli向脚本和样式文件添加前缀

使用版本
ng--version

@angular/cli: 1.0.0-rc.0
node: 6.9.1
os: win32 x64
@angular/common: 2.4.9
@angular/compiler: 2.4.9
@angular/core: 2.4.9
@angular/forms: 2.4.9
@angular/http: 2.4.9
@angular/platform-browser: 2.4.9
@angular/platform-browser-dynamic: 2.4.9
@angular/router: 3.4.9
@angular/cli: 1.0.0-rc.0
@angular/compiler-cli: 2.4.9
您可以使用--deployURL为生成的静态文件的路径添加前缀<代码>ng构建--部署url/static/。在生成的index.html中,它将在js文件的路径前面加上
/static/
,如下所示:

<script type="text/javascript" src="/static/inline.bundle.js"></script>

根据评论更新答案。

使用angular CLI 6.1.1

我这样做,您需要使用build标志
--base href

示例

ng build --prod --base-href=/dist/my-app/
我访问网站的方式如下
http://127.0.0.1:5500/dist/my-app/index.html


官方文档参考

资产中的静态文件如何?是的,
-d
是无效的命令,因此只有
--deploy url
一个。图像如何?如果我用base href这样做,它会在所有路由中添加前缀这不是OP想要的,这只是在
中更改
href
ng build --prod --base-href=/dist/my-app/