2017-08-09 2 views
2

私は自分のプロジェクトにangular cliを使用しています。私は以下のような構造のJSONを配置しましたangle cliを使用している場合にローカルフォルダにJSONを配置します

src/app/data/data.json http.getメソッドからアクセスしようとしています

return this._http.get('../data/data.json', 
           { headers: this.getHeaders }) 
      .map((response: Response) => response.json()) 
      .catch(this.handleError); 

jsonが見つかりません。しかし、私は資産フォルダにJSONを配置する場合と同じです。 JSONをassetsフォルダに配置したくない。アプリフォルダにjsonを置いても動作しますか?

+1

デフォルトでは、すでに存在し .angular-cli.jsonassetsとしてassetsassets/data/data.json のようなので、このように変更する必要はありませんにあなたがあなたのカスタム資産を配置することができますそれはあなたのパブリックディレクトリだからです。 – brijmcq

+0

動作するはずです。あなたのコードはどのパスにあるのでしょうか? – MeMeMax

答えて

2

.angular-cli.json"assets"セクションを使用する必要があります。この方法は、あなたは、例えば、CLIの角度によって、あなたの静的な資産の出力が得られます:

"assets": [ 
    "assets", 
    "favicon.ico", 
    "app/data/data.json" 
], 

app/data/フォルダに1つだけのファイルdata.jsonapp/data/data.jsonassetsでのCLIの意志の出力を指定します。あなたが出力したい場合は、あなたのapp/dataフォルダ内のすべての資産は、あなたがこれを行う:

"assets": [ 
     "assets", 
     "favicon.ico", 
     "app/data" 
    ], 

をごstatic資産が がng buildを実行しているとdistフォルダの内容をチェックすることで、CLIによってoutputedなった場合は、いつでも確認することができます。

フォルダが、私はそれはあなたの資産フォルダ内の場所でなければならないと考えている

+0

彼は彼のアプリのフォルダに私はそれがどんなアイデアだろうと思うファイルを配置する場合は動作しませんか? –

+1

@RahulSinghは 'app'の内部にある可能性があります同じレベルにある可能性があります – Kuncevic

+0

私は資産や任意のフォルダ内の任意の意味を作っていない、それは直接URLで公開されます – Hacker

関連する問題