如何将JavaScript文件导入angular2
我不知道如何将javascript文件导入angular2项目。这是一个文件,不是一个模块,是npm的一部分,我能找到的唯一的指示是使用npm,这不是一个选项在这里 我正在使用angular cli,在angular-cli.json文件中,我有:如何将JavaScript文件导入angular2,javascript,angular,typescript,typescript-typings,Javascript,Angular,Typescript,Typescript Typings,我不知道如何将javascript文件导入angular2项目。这是一个文件,不是一个模块,是npm的一部分,我能找到的唯一的指示是使用npm,这不是一个选项在这里 我正在使用angular cli,在angular-cli.json文件中,我有: { "apps": [ "styles": [..], "scripts": ["../pathtomyjs/file.js"] ]} 我运行了ng build和ng serve,当我打开我的应用程序,查看web控制台并尝试引用js文件中
{
"apps": [
"styles": [..],
"scripts": ["../pathtomyjs/file.js"]
]}
我运行了ng build和ng serve,当我打开我的应用程序,查看web控制台并尝试引用js文件中的函数时,我能够成功地做到这一点
在控制台中输入示例:
var test = MyObject;
我得到test={}
然而,当我尝试这样做
let test = MyObject;
在我的component.ts文件中,我得到:
home.component.ts (10,11): Cannot find name 'MyObject'.)
不知道如何在Angular2中执行此操作
谢谢 它是第三方库吗?您必须让typescript编译器知道类型定义文件在哪里。通常,它会在
node\u modules/@types
文件夹下查找。例如,如果要使用jQuery
,可以通过运行以下命令安装必要的类型定义文件:
npm install @types/jquery
我将我的
js
文件放入app/assets/scripts
并将它们加载到index.html
。这是针对ionic2
/angular2
项目的
在模块中,您必须在模块文件的全局范围内定义这样的函数
声明var myFancyFunction代码>执行以下操作:
declare var MyObject: any;
let test = MyObject;
或:
我对此进行了深入研究:
这是一个很好的问题,我很高兴你问我这个问题,因为我希望在我第一次遇到这个小问题的时候我就有我要写的东西。这是一个typescript/javascript和网页包问题,而不是一个角度问题。我肯定正在计划尽快写一篇文章
您的场景:
你跑
npm install mathjs
现在您尝试从组件中使用math.js:
查找math.js dist js文件(node_modules/mathjs/dist/math.js)并像这样引用
从“./../node_modules/mathjs/dist/math”导入{mathjs}”代码>
但您会收到一条错误消息,上面写着“set--allowJS”。
您可以这样做:
Set——配置中的allowJS(tsconfig.json)
{“编译器选项”:{
“allowJs”:正确,…
谢谢Dan,我结束了在ts文件中的导入语句下面放置declare var语句的过程,我尝试了let test=MyObject,但仍然出现了错误。将let更改为public仍然有效!是不是我做错了什么,导致声明为“let”不起作用?不管怎样,我只需要删除“let”在考试前,我不再需要“公开”。我在这里对此进行了深入研究:
declare var jQuery: any;
jQuery.ajax({ ... });
npm install mathjs