AngularJS 인텔리센스가 Visual Studio 2015에서 작동하지 않음
이 포스트에 따르면 인텔리센스도 새로운 VS 2015에서 작업해야 하지만, 지금까지 각진 오브젝트에 대해서만 인텔리센스를 얻을 수 있고 의존관계나 커스텀 모듈에 대해서는 얻을 수 없습니다.

제가 한 일은 다음과 같습니다.
- 글로벌 Javascript 에 대한 의 intellisense.discript:
C:\Program Files (x86)\Microsoft Visual Studio 14.0\JavaScript\References - VS2015 재부팅 $http 객체에 인텔리센스를 사용하려고 할 때마다 느낌표가 표시됩니다.
파일도 angular.js와 같은 장소에 추가했지만, 아직 동작하지 않았습니다.이 경우 궁금한 것은 파일을 어디에 배치해야 하는가 하는 것입니다.my angular.filer만 있는 angular public 폴더 또는 bower에서 다운로드된 모든 파일이 있는 dev angular 폴더에 저장된다.
Implicit(Web) 레퍼런스 그룹의 툴/옵션/텍스트 에디터/javascriptr/intellisense/reference 메뉴에 직접 추가해 보았지만 여전히 작동하지 않았습니다.
프로젝트에서는 src 폴더 내에 다음과 같은 폴더 구조가 있습니다.
- wwwroot
- app(어플리케이션)
- 컨트롤러
- 서비스
- 뷰
- lib(.min.dependency)
- 각진
- 각경로의
- ....
- _references.visual studio js references 파일, 앱 및 lib 폴더 내의 파일에 대한 참조 포함)
- app(어플리케이션)
- 바우어
- 각진
- 각경로의
- ...
에 /scripts 폴더는 없습니다./scripts/_references.js
.
웹 프로젝트에서는 Visual Studio 2015 RTM에서는 이 방법이 통하지 않았지만, 문제를 해결했습니다.
Visual Studio도 ._references.js무데아그래서 어떤 상황에서도 잘 될 것 같아요.
VS UI 내에서 다른 모든 인텔리센스 리소스를 제거하여 수정 작업을 수행했습니다.
- Uncompressed CDN URL을 복사합니다.오늘은 https://ajax.googleapis.com/ajax/libs/angularjs/1.4.4/angular.js 입니다.
- Visual Studio 2015 RTM으로 합니다.
Tools, Options, Text Editor, Javascript, Intellisense, References의 웹 에서는, 은 「레퍼런스 그룹」입니다.대부분의 웹 프로젝트에서는 다음과 같습니다.Implicit (Web). 맨 아래 텍스트 상자에 URL을 붙여넣고 버튼을 클릭합니다.아직 대화 상자를 끄지 마십시오.
- 래래 under
Text Editor, Javascript, Intellisense, General있는지Download remote references. - 버튼을 클릭합니다.
- ) (프레임워크의 ) 각를 필요로 하는 는, 「」( 「」)」를 추가합니다
_references.js프로젝트의 근원을 파악합니다. 할 는 없다Scripts후 자동를 선택한 후 를 선택합니다자동 동기화 업데이트이 페이지로 이동하여 빌드 프로세스에서 생성된 js 파일을 삭제합니다.그렇지 않으면 너무 커서 섬세함이 깨질 수 있습니다.인텔리센스를 처음 사용할 때는 프로젝트의 모든 참조를 로드해야 하므로 5~10초 정도의 지연에 대비하십시오. - 네이티브의 인텔리센스를 방해하는 경우 Javascript를 위해 Resharper의 인텔리센스를 비활성화해야 할 수 있습니다.
- Visual Studio를 재시작합니다.이렇게 하지 않으면 작동하지 않습니다.또한 이 인스턴스 이외의 모든 인스턴스를 먼저 닫는 것이 편집증적이기 때문에 이러한 설정은 "고정"됩니다.따라서 이 인스턴스를 재시작하기 전에 이 작업을 수행하는 것이 좋습니다.
@Balthasar가 지적한 바와 같이 (Resharper를 사용하는 경우) 동작시키려면 Visual Studio에서 인텔리센스를 활성화해야 합니다.
Resharper -> options -> environment -> intellisense -> general, 'Custom Intellisense'를 선택하고 Javascript의 경우 Visual studio를 선택할 수 있습니다.또는 'Visual Studio' 문 완성(두 번째 옵션)을 사용할 수 있습니다.
_reference.files 파일이 사용하는 자동 순서(처음에는 내 파일, 다음으로 프레임워크의 파일)로 인해 app.files 이외의 다른 파일에서는 인텔리센스가 동작하지 않는다는 것을 방금 깨달았습니다.
현재 나의 _references.display는 다음과 같습니다.
/// <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 파일에 설정한 모든 멋진 JavaScript 인텔리센스를 차단하고 있었습니다.
Visual Studio의 앵귤러용 인텔리센스JS는 매우 감상적입니다(개발이 제대로 되지 않았을 가능성이 매우 높습니다).
따라서 모든 것이 _references.js 파일로 올바르게 구성되어 있고 jQUERY와 같은 다른 라이브러리의 인텔리센스를 얻더라도 Angular에서는 얻을 수 없습니다.JS.
예를 들어 VS 2015 커뮤니티에서는 아래 명령어는 $http angular object에 대해 인텔리센스를 표시하지 않습니다.다만, 코드에서는 정상적으로 동작합니다.
다음 그림에서 빈 어레이를 모듈에 추가하면(모듈이 생성되고 같은 이름의 다른 어레이가 있으면 덮어쓰기됨) 인텔리센스가 동작을 시작합니다.
다음은 사용자가 직접 테스트하기 위한 코드 조각입니다(여기에 빈 어레이를 추가합니다).
(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: Solution Explorer를 Ctrl+Alt+A새로운 아이템을 추가하기 위해 AngularJs 디렉티브를 추가하도록 제안됩니다.이렇게 하면 모듈 선언에 빈 배열이 없으면 방금 보여드린 디렉티브와 같은 디렉티브가 되기 때문에 인텔리젼스는 기능하지 않습니다.마이크로소프트사의 제품첫 번째 파일인 모듈 생성에서만 작동하며 앞으로는 작동하지 않습니다.
저도 같은 문제가 있었어요.Angular를 추가하자 VS 2015(RTM)가 내 _references.js를 수정했습니다.기본적으로 파일 내의 일부 행이 삭제되었습니다.아래와 같이 나의 _references.js에 앵굴라 레퍼런스를 추가했을 때
/// <reference path="lib/angular/angular.js" />
2015년 VS에서 Angular 1.4.3에 대한 지식을 얻었습니다!
이 기사에 따라 VS에 보다 포괄적인 기능을 추가하십시오.
http://blogs.msdn.com/b/visualstudio/archive/2015/02/05/using-angularjs-in-visual-studio-2013.aspx
앵글을 다운받으세요.intellisense.js 파일을 작성하여 Program Files (x86)\Microsoft Visual Studio 12.0\JavaScript\References 폴더에 저장합니다.
난 이 문제가 있었어
비주얼 스튜디오 IDE는 HTML 파일에서 참조되는 js 파일을 스캔하여 neccesary(인텔리센스 등)에 사용합니다.
문제는 CDN/http:// 주소를 사용하여 Angularjs를 참조하고 있었기 때문에 Visual studio에는 Angular에 대한 정보가 없었습니다.
angularjs js 파일을 직접 다운로드하여 프로젝트와 참조를 index.html에 포함시켜 (만일을 위해) 재구축하고 다시 시도합니다.이것이 작동하기를 희망합니다.
내가 도와줬길 바래.
RTM에 관한 문제가 있습니다.각진 오브젝트와 Hello world complexity senario (http와 모든 커스텀 오브젝트가 작동하지 않습니다.) 。_references setups에 따릅니다.유일한 서스펜션은 RC에서 RTM으로 업그레이드(새로 설치하지 않음)하여 Git [link]github.com/jmbledsoe/angularjs-visualstudio-intellisense/issues/에서 문제가 발생했다는 것입니다.VHD Win 10 이미지를 캡처하고 d/l이 완료되면 다음 작업을 수행합니다.
갱신하다
여기 약간의 도움이 있으면 대답할 수 있습니다.Intellissense 엔진은 스크립트 블록의 app.html 파일에 생성되므로 "sportsStore"라는 이름의 모듈이 생성되는 것을 인식하지 않습니다.
<script>
angular.module("sportsStore", ["customFilters","cart"]);
</script>
VS Intelisense 엔진은 코드 완성 방법을 찾기 위해 프로젝트 내의 코드를 "실행"하고 있습니다._references.js 파일을 시작점으로 사용하여 해당 파일에서 각 참조를 순서대로 실행합니다.VS Intelisense는 Angular를 생성하는 코드 행을 실행하지 않기 때문에"sportsStore"라는 이름의 JS 모듈은 코드 완성 방법을 모릅니다.
위의 JavaScript 코드를 자체 JS 파일('app.js'라고 부름)로 이동하여 참조를 _references.js에 포함합니다."app.js" 참조가 "angular.js" 참조 바로 뒤에 있는지 확인합니다.다른 스크립트파일이 모듈을 설정하기 전에 모듈을 작성해야 합니다. : D
프로젝트의 루트에 있는 '스크립트'(명칭 규칙)라는 이름의 폴더에 _references.js 파일을 작성하기만 하면 됩니다.필요한 Javascript 파일로 업데이트하면 인텔리센스를 얻을 수 있습니다.이러한 것이 필요한 이유에 대한 링크는 다음과 같습니다.http://madskristensen.net/post/the-story-behind-_referencesjs
위 중 어느 것도 나에게 맞지 않는다.저는 Visual Studio 2017 - Professional
그러나, 여기의 솔루션을 사용해 작업을 실시했습니다.-->
- .
/// <reference path="yourpath"/>이치노 - 최소화된 소스를 사용하지 마십시오.모든 출처는 기밀이어야 합니다.
- 경로 stmts를 _reference.js 파일에 저장하는 경우 해당 파일이 코드 파일이 있는 동일한 위치에 있는지 확인하십시오.
참조 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" />
위의 작업을 모두 마치면 각도가 보일 것입니다.
jQuery, Anytime, _언더스코어 등 다른 사용자의 인텔리센스에도 동일한 작업을 수행할 수 있습니다.path 문을 _reference.filename 파일에 계속 추가하기만 하면 됩니다.또, 같은 dir 구조를 가지는 다른 Web 사이트에 그 _reference.filename 파일을 카피할 수도 있습니다.행운을 빕니다.
언급URL : https://stackoverflow.com/questions/29830266/angularjs-intellisense-not-working-on-visual-studio-2015
'programing' 카테고리의 다른 글
| 하나 이상의 어레이가 비어 있으면 merge_array가 null을 반환합니까? (0) | 2023.02.11 |
|---|---|
| json_encode()를 사용할 때 어레이 인덱스 참조를 제거하는 중 (0) | 2023.02.11 |
| 스프링 부트 컨트롤러 - 멀티파트 및 JSON을 DTO에 업로드 (0) | 2023.02.11 |
| 네이티브 대응 javascript 번들 다운로드가 100% 고착됨 (0) | 2023.02.11 |
| R+knitr에서 WordPress로 게시하시겠습니까? (0) | 2023.02.11 |







