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

时间:2018-03-06 02:58:25

标签: javascript angular

假设我获得了一个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>

感谢您的帮助

2 个答案:

答案 0 :(得分:4)

您可以将其置于src/assets/js/script1.js

之下

然后将其添加到.angular-cli.json

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

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

您可以通过

全局访问它
declare const globalVar: any;

答案 1 :(得分:2)

你有两个选择

1您可以将它放在index.html中的body标签内,就像这样

<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你可以将它放在.angular-cli.json文件中的脚本中,就像这样

"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();
 }
}