Javascript 在Angular 4中导入外部js文件并访问函数和变量
也许我的标题有点不清楚,所以我会尝试用一个简单的任务来解释我的问题 假设我有一个Javascript文件“File.js”: 我把这个脚本放在我的angular4项目的“src/assets/js/file.js”中 在“.angular cli.json”中,我添加了脚本的路径Javascript 在Angular 4中导入外部js文件并访问函数和变量,javascript,angular,Javascript,Angular,也许我的标题有点不清楚,所以我会尝试用一个简单的任务来解释我的问题 假设我有一个Javascript文件“File.js”: 我把这个脚本放在我的angular4项目的“src/assets/js/file.js”中 在“.angular cli.json”中,我添加了脚本的路径 "scripts": [ "../node_modules/jquery/dist/jquery.min.js", "./assets/js/modernizr.js", "./assets/js/webf
"scripts": [
"../node_modules/jquery/dist/jquery.min.js",
"./assets/js/modernizr.js",
"./assets/js/webflow.js",
"./assets/js/file.js"
现在我的问题是如何在我的app.module.ts或任何其他组件中导入或使用此脚本文件,而不将其添加到index.html
我尝试了几种方法:
import * as test from 'assets/js/file.js';
import {test} from 'assets/js/file.js';
declare var file: any;
不幸的是,没有一个有效
如果你们能帮我的话,我将非常感谢。你们可以使用system.js在运行时导入文件,如下所示,你们必须在节点模块中添加systemjs
System.import("src/assets/js/file.js").then(fileInstance => {
console.log(fileInstance);
});
在component.ts中,您应该声明要使用的函数的名称
declare let encode:any
ngOnInit(){
encode()
}
您可以像这样将js本地导入ts文件:Import'../../../scripts/custom.js' 然后在custom.js中声明要像这样使用的方法名
declare let encode:any
ngOnInit(){
encode()
}