Javascriptファイルをangular2プロジェクトにインポートする方法を理解するのに問題があります。それはnpmの一部であるモジュールではないファイルであり、私が見つけることができた唯一の指示はnpmを使用することであり、これはここではオプションではありません。
私はangular cliを使用しています。angular-cli.jsonファイルには次のものがあります。
{
"apps": [
"styles": [..],
"scripts": ["../pathtomyjs/file.js"]
]}
Buildとng serveを実行し、アプリを開いて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
フォルダ。たとえば、jQuery
を使用する場合は、次を実行して必要なタイプ定義ファイルをインストールします。
npm install @types/jquery
これについて深く掘り下げました ここ :
これは素晴らしい質問です。この小さな問題に最初に出会ったときに、これから書きたいものがあればいいのにと思います。これはTypeScript/javascriptとwebpackの問題であり、angularの問題です。私は間違いなく my blog の記事をできるだけ早く計画しています。
あなたが実行します
_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):到達不能コードが検出されました。
Solution:ターゲットlibのタイピングファイルをインストールします(@ types/mathjs)
js
ファイルをapp/assets/scripts
に入れ、index.html
<script src="assets/scripts/foobar.js"></script>
にロードします。これはionic2
/angular2
プロジェクト用です。
モジュールでは、モジュールファイルのグローバルスコープでこのような関数を定義する必要があります
declare var myFancyFunction;