[英]How to import JavaScript file into angular2
我無法弄清楚如何將javascript文件導入我的angular2項目。 這是一個不是npm的模塊的文件,我能找到的唯一指令是使用npm,這不是一個選項。
我使用的是角度cli,在我的angular-cli.json文件中,我有:
{
"apps": [
"styles": [..],
"scripts": ["../pathtomyjs/file.js"]
]}
我運行構建和ng服務,當我打開我的應用程序並查看Web控制台並嘗試引用我的js文件中的函數時,我能夠成功完成。
我鍵入的控制台中的示例:
var test = MyObject;
我得到test = {};
但是,當我嘗試做的時候
let test = MyObject;
在我的組件.ts文件中,我得到:
home.component.ts (10,11): Cannot find name 'MyObject'.)
不知道如何在Angular2中這樣做。
謝謝!
做:
declare var MyObject: any;
let test = MyObject;
要么:
let test = (<any> MyObject);
對於jQuery:
declare var jQuery: any;
jQuery.ajax({ ... });
它是第三方圖書館嗎? 你必須讓typescript編譯器知道類型定義文件的位置。 通常,它在node_modules/@types
文件夾下node_modules/@types
。 例如,如果您想使用jQuery
,則可以通過運行以下命令來安裝必要的類型定義文件:
npm install @types/jquery
這是一個很好的問題,我很高興你問,因為我希望我第一次遇到這個小問題的時候就有了我要寫的內容。 這是一個打字稿/ javascript和webpack問題,然后才會出現角度問題。 我絕對計划盡快在我的博客上寫一篇文章 。
你跑
npm install mathjs
找到math.js dist js文件(node_modules / mathjs / dist / math.js)並像這樣引用
import {mathjs} from "../../node_modules/mathjs/dist/math";
但是你收到錯誤信息"set --allowJS".
你這樣做:
Set --allowJS in config (tsconfig.json) { "compilerOptions": { "allowJs": true, ...
現在你得到:
錯誤在../node_modules/mathjs/dist/math.js(12209,13):檢測到無法訪問的代碼。
解決方案 :為目標庫安裝一個打包文件(@ types / mathjs)
我將我的js
文件放入app/assets/scripts
並將它們加載到index.html
<script src="assets/scripts/foobar.js"></script>
。 這是針對ionic2
/ angular2
項目。
在模塊中,您必須在模塊文件的全局范圍內定義這樣的函數
declare var myFancyFunction;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.