我是棱角分明的新人。 谁能说我怎样才能在角度模板中添加自定义js文件。
@Component({
selector: 'app-home',
templateUrl: './home.component.html',
styleUrls: ['./home.component.css']
})
已更新
我想添加以下代码
$("#single-slider").owlCarousel({
navigation: true,
slideSpeed: 600,
autoPlay: 6000,
singleItem: true,
pagination: false,
navigationText: [
"<i class='fa fa-angle-left'></i>",
"<i class='fa fa-angle-right'></i>"
],
});
答案 0 :(得分:1)
您可以在HTML中添加<script>
,但不会工作,因为在构建应用时,Angular DOMSantizer会删除所有<script>
。
所以你必须以@trichetriche显示的方式加载自定义js。但是,如果只需要一个组件的js,那么就有一种解决方法,这是一种hacky。
您可以在ngAfterViewInit()
中加载/初始化DOM之后加载js。这样Angular DOMSantizer就不知道<script>
。
你走了:
constructor(private elementRef:ElementRef) {};
ngAfterViewInit() {
var s = document.createElement("script");
s.type = "text/javascript";
s.src = "../path-to-your-js-or-external-URL";
this.elementRef.nativeElement.appendChild(s);
}
答案 1 :(得分:0)
你做不到。
但,您可以将其添加到您的应用程序中作为全局脚本,方法是将其添加到angular-cli.json
文件中:
"scripts": [
"assets/xxx.js", // path to assets file
"../node_modules/moment/moment.js" // Path to node modules dependency
],
答案 2 :(得分:0)
在角度
中包含js的3个主要步骤