これによると post intellisenseは新しいVS 2015でも動作するはずですが、これまでのところangularオブジェクトに対してのみインテリセンスを取得し、依存関係やカスタムに対してはインテリセンスを取得しませんモジュール。
私がやったことは次のとおりです。
C:\Program Files (x86)\Microsoft Visual Studio 14.0\JavaScript\References
でグローバルjavascriptリファレンスにangular.intellisense.jsを追加しましたまた、ファイルをangle.jsと同じ場所に追加しましたが、まだ機能しませんでした。この場合の質問は、ファイルをどこに配置すればよいですか? angular私のangular.jsのみを含むパブリックフォルダ、または私のdev angular bowerからダウンロードされたすべてのファイルがあるフォルダ。
Implicit(Web)参照グループのtools/options/text editor/javascriptr/intellisense/referenceメニューにも直接追加してみましたが、まだ機能しませんでした。
私のプロジェクトでは、srcフォルダー内に次のフォルダー構造があります。
追記として、/ scriptsフォルダーがないため、/scripts/_references.js
ファイル
。
これは、Visual Studio 2015 RTM Webプロジェクトでは機能していませんでしたが、問題を解決しました。
このプロジェクトはVisual Studioで作成されたものではなく、__references.js
_ファイルはどこにもありません。だから、これはどんな状況でも機能すると思います。
VS UIから他のすべてのインテリセンスリソースを削除して、それが修正されたことを確認しました。
Tools, Options, Text Editor, Javascript, Intellisense, References
_に移動します。適切な参照グループを選択します。ほとんどのWebプロジェクトでは、これはImplicit (Web)
です。下部のテキストボックスにURLを貼り付けて、 Add ボタン。まだダイアログボックスを閉じないでください。 Text Editor, Javascript, Intellisense, General
_の下で、_Download remote references
_のチェックボックスがオンになっていることを確認します。_references.js
_を追加します。 Scripts
フォルダーを作成する必要はありません。右クリックして[自動同期]を選択し、[更新]を選択します。ビルドプロセスで作成されたjsファイルを削除します。インテリセンスを使用すると、プロジェクトからこれらすべての参照をロードする必要があるため、インテリセンスを初めて使用するときは、最大5〜10秒の遅延に備えてください。私はちょうど_reference.jsファイルが使用する自動順序(最初に私のファイル、次にフレームワークのファイル)がintellinsenseがapp.jsファイルではない他のファイルで動作することを妨げたことに気付きました
これは私の_references.jsのようになりました:
/// <autosync enabled="false" />
/// <reference path="angular.js" />
/// <reference path="angular-resource.js" />
/// <reference path="angular-ui-router.min.js" />
/// <reference path="jquery-2.1.4.js" />
/// <reference path="materialize/materialize.js" />
/// <reference path="../App/App.js" />
/// <reference path="../App/Controllers/productsController.js" />
/// <reference path="../App/Controllers/productsEditController.js" />
/// <reference path="../App/Controllers/valuesController.js" />
/// <reference path="../common/common.services.js" />
/// <reference path="../common/productsResource.js" />
/// <reference path="../common/valuesResource.js" />
同様の問題があり、Resharperが_references.jsファイルで設定したすべてのNice JavaScriptインテリセンスをブロックしていることがわかりました。
そのため、すべてが_references.jsファイルで適切に構成されていて、jQUERYのような他のライブラリのインテリセンスを取得しても、AngularJSのインテリセンスを取得することはほとんどないでしょう。
たとえば、VS 2015コミュニティでは、以下のディレクティブは$ http angularオブジェクトのインテリセンスを表示しませんが、すべてがコードで正常に機能します:
次の画像では、空の配列をモジュールに追加し(モジュールが作成され、同じ名前の別のモジュールが存在する場合は上書きされることを意味します)、インテリセンスが機能し始めます:
以下に、自分でテストするためのコードの抜粋を示します(ここに空の配列を試して追加します)。
(function () {
'use strict';
angular
.module('intellisence.sucks.directives')
.directive('footer', footer);
footer.$inject = ['$http'];
function footer($http) {
$http.
var directive = {
link: link,
restrict: 'EA'
};
return directive;
function link(scope, element, attrs) {
}
}
})();
PS:ソリューションエクスプローラーでプロジェクト上の任意のフォルダーをクリックし、Ctrl
+ Alt
+ A
を押して新しいアイテムを追加すると、AngularJsを追加する提案が表示されます。ディレクティブ、およびそれを行うと、モジュール宣言に空の配列がないため、ディレクティブは先ほど示したようなものになるため、インテリジェンスは機能しません。マイクロソフトがユーザーに提供する例では機能しません...最初のファイルであるモジュール作成でのみ機能し、今後は機能しません。
同じ問題がありました。角度を追加すると、VS 2015(RTM)が_references.jsを変更しました。基本的に、ファイル内の私の行の一部を削除しました。以下のように_references.jsにangulaの参照を追加したとき
/// <reference path="lib/angular/angular.js" />
VS 2015でAngular 1.4.3のインテリセンスを入手しました!
私はこの問題をRTM ..apart from angular object and hello world complex senario($ httpおよびすべてのカスタムオブジェクトが動作しない)..私の唯一の疑いは、RCからRTM(新規インストールなし)にアップグレードしたため、Gitで問題が発生した[link] github.com/jmbledsoe/angularjs-visualstudio-intellisense/issues /…..VHD Win 10イメージを取得し、d/lが終了したらそれを試してみる:( –
[〜#〜] update [〜#〜]
ここで少し助けを借りると、答えは...です。Intellisenseエンジンは、スクリプトブロックのapp.htmlファイルに作成されているため、「sportsStore」という名前のモジュールが作成されていることを確認できません。
<script>
angular.module("sportsStore", ["customFilters","cart"]);
</script>
VS Intellisenseエンジンは、コード補完を実行する方法を発見するために、プロジェクト内のコードを「実行」しています。 _references.jsファイルを開始点として使用し、そのファイルから各参照を順番に実行しています。 VS Intellisenseは、「sportsStore」という名前のAngularJSモジュールを作成するコード行を実行することはないため、コード補完の方法を知りません。
上記のJavaScriptコードを独自のJSファイルに移動し(「app.js」と呼びましょう)、_ references.jsにその参照を含めます。 「app.js」参照が「angular.js」参照の直後にあることを確認してください。他のスクリプトファイルで構成する前にモジュールを作成する必要があるためです。 :D
この問題がありました。
Visual Studio IDEは、HTMLファイルで参照されているjsファイルをスキャンし、必要に応じて使用します(インテリセンスなど)。
私の問題は、CDN/http://アドレスを使用してAngularjsを参照していたため、Visual Studioには角度に関する情報がありませんでした。
Anglejs jsファイルを直接ダウンロードして、プロジェクトに含めてindex.htmlに参照し、再構築して(念のため)、もう一度試してみてください、うまくいけばうまくいきます。
お役に立てば幸いです。
この記事に従って、より包括的なインテリセンスをVSに追加してください。
http://blogs.msdn.com/b/visualstudio/archive/2015/02/05/using-angularjs-in-visual-studio-2013.aspx
angular.intellisense.js ファイルをダウンロードし、Program Files(x86)\ Microsoft Visual Studio 12.0\JavaScript\Referencesフォルダーに配置します
プロジェクトのルートにある 'Scripts'(命名規則)という名前のフォルダーに_references.jsファイルを作成するだけです。必要なjavascriptファイルで更新すると、インテリセンスを取得できるはずです。ここに、そのようなことが必要な理由に関するリンクがあります: http://madskristensen.net/post/the-story-behind-_referencesjs
私にとっては上記の仕事のどれでもない。 Mine is Visual Studio 2017-Professional
しかし、私はここで自分のソリューションを使用してそれを動作させました->
/// <reference path="yourpath"/>
でソースを参照する必要があります。ソースがコーディングしているのと同じフォルダーにある場合でもです。コードファイル内に参照stmtを配置できますが、別のファイル「_ reference.js」を使用して保存することを選択しました。
これをあなたのコードに入れることができます:
/// <reference path="../_assets/JS-Main/angular-1.3.13.js" />
var app = angular.module('app', ['ui.grid', 'ui.bootstrap']);
app.controller('MainCtrl', ['$scope', '$http', function ($scope, $http) {
または、この行を_reference.jsファイルに入力できます
/// <reference path="../_assets/JS-Main/angular-1.3.13.js" />
上記のすべてを完了すると、angular intellisenseが表示されるはずです。
JQuery、Anytime、_underscoreなど、他のインテリセンスでも同じことができます。パスステートメントを_reference.jsファイルに追加し続けるだけでなく、同じ_reference.jsファイルを他のWebサイトにコピーすることもできます。 dir構造体。幸運を!