2017-09-03 3 views
0

私は「synaptic.js」はJavaScriptのライブラリを私のAngular2プロジェクトに機械学習を含めたい私のAngular2のプロジェクトで使用するJavaScriptファイルのカスタムにJavaScriptライブラリ。私はインポート私は

npm install synaptic --save 

私はjavascriptのファイル次のカスタムを実行したいコマンドを使用してライブラリをインストールしている(myJsFile.js):私ののindex.htmlで

function myFunction() { 
    var A = new Layer(5); 
    var B = new Layer(2); 
    A.project(B); 

    var learningRate = .3; 

    for (var i = 0; i < 20000; i++) 
    { 
     // when A activates [1, 0, 1, 0, 1] 
     A.activate([1,0,1,0,1]); 

     // train B to activate [0,0] 
     B.activate(); 
     B.propagate(learningRate, [0,0]); 
    } 

    // test it 
    A.activate([1,0,1,0,1]); 
    console.log(B.activate()); // [0.004606949693864496,0.004606763721459169] 
} 

ファイルには、次のコードが含まれています:

<script src="js/myJsFile.js"></script> 
app.component.tsで

例えば、警告()関数はmyJsFile.js内ファイルだった場合は、コードをせずに実行します

import { Component, OnInit }  from '@angular/core'; 
import { Router }     from '@angular/router'; 
import { AuthenticationService } from '../../Services/authentication.service'; 
declare var myFunction: any; 

@Component({ 
    moduleId:  module.id, 
    selector:  'my-app', 
    templateUrl: './app.component.html', 
    styleUrls: [ './app.component.css' ] 
}) 

export class AppComponent implements OnInit { 
    // some code here 

    // I call f() function inside the app.component.html file in order to run the myFunction() javascript function. 
    f() { 
     new myFunction(); 
    } 

ファイル何の問題。

app.component.html:9 ERROR ReferenceError: Layer is not defined

それは私がどこかにシナプスライブラリをインポートする必要があることを意味します。しかし、私の場合、私は次のエラーを持っています。私はインポートする必要

myJsFile.js:1 Uncaught ReferenceError: require is not defined

:私は私のmyJsFile.jsに上記のコードをインポートする場合

var synaptic = require('synaptic'); // this line is not needed in the browser 
var Neuron = synaptic.Neuron, 
    Layer = synaptic.Layer, 
    Network = synaptic.Network, 
    Trainer = synaptic.Trainer, 
    Architect = synaptic.Architect; 

が、私は次のエラーを取得する: githubの中の使用区間(https://github.com/cazala/synaptic)は、以下の指摘しますシナプスライブラリーとは?

私はまた、発見し、synaptic.d.tsファイルをインストールし、私はそれを使用する方法がわからない...誰も私を助けることができています?

ありがとうございました!

+0

あなたはcliを使用しています –

答えて

0

あなたが持っている例はおそらくNodeを使用していますが、Angular 2+を使用するにはインポート構文を使用する必要があります。

import { Neuron, Layer, Network, Trainer, Architect} from 'synaptic'; 

その後、あなたはまた、私はあなたのmyJsFile.jsファイルのTSファイルを作成し、同じようにインポートすることをお勧め彼らに

を参照することができるはずできます。すべてがjsでインポートされ、htmlではインポートされないと、それほど複雑ではありません。

+0

ありがとうございました!出来た!私はあなたの助言に従った!しかし、さらに、私はsystemjs.config.jsファイルの中で "'synaptic': 'npm:synaptic/dist/synaptic.js'を宣言しなければなりませんでした。 –

関連する問題