在哪里放置自定义js文件以及如何在Angular 4应用程序中引用它们

问题描述 投票:0回答:2

假设我获得了一个html5模板。包含HTML,css,js文件和其他类型资源(如图片)的文件夹。我将Html和CSS复制/粘贴到component.html和component.css。

谈到JavaScript,我有一个名为js的文件夹,其中包含很少的JavaScript文件。

我应该在哪里放置js文件夹以及如何在我的应用程序中引用它们?

在原始文件中,我有类似于HTML文件底部的东西:

<script src="js/script1.js"></script>
<script src="js/script2.js"></script>
<script src="js/script3.js"></script>

谢谢你的帮助

javascript angular
2个回答
2
投票

你有两个选择

1 you can place it inside body tag in index.html like this

<body>
<app-root></app-root>
<script type="text/javascript" src="assets/jquery/jquery.min.js">
</script>
<script type="text/javascript" src="assets/js/script2.js">
</script>
</body>

2 you can place it inside scripts in .angular-cli.json file like this

"scripts": [
    "./assets/js/script2.js"
    "assets/jquery/jquery.min.js"
  ],

如果要访问组件内部的代码,请在import语句下面和组件声明之上声明一个全局变量,如下所示

import { Component } from '@angular/core';
declare const $: any;
@Component({
  selector: 'tc-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css']
})

export class AppComponent {
  showModal(){ 
  //caling jQuery method
   $("#modalId").show();
 }
}

4
投票

你可以把它放在src/assets/js/script1.js

然后在.angular-cli.json上添加它

"apps": [
  {
    ...
    "scripts": [
      "assets/js/script1.js"
    ]
  }
]

要在打字稿代码上访问您的代码,

你可以通过全球访问它

declare const globalVar: any;
© www.soinside.com 2019 - 2024. All rights reserved.