validate type ts2339 tipo slimscroll sidenav propiedad property not modal htmlelement existe exist error does jquery modal-dialog typescript

ts2339 - property tooltip does not exist on type jquery htmlelement>''



error TS2339: La propiedad ''modal'' no existe en el tipo ''JQuery'' (6)

Estoy usando Typescript con AngularJS. Tengo un problema con los modales que utilizan la definición escrita de la biblioteca jQuery. Recibo el siguiente error: ''error TS2339: la propiedad'' modal ''no existe en el tipo'' JQuery ''.''

Versión: jQuery library, versión 1.10.x / 2.0.x Definiciones: https://github.com/borisyankov/DefinitelyTyped

Código

$scope.delete = function (id) { Photo.get({id: id}, function(result) { $scope.photo = result; $(''#deletePhotoConfirmation'').modal(''show'');// error line }); };

Estoy haciendo referencia a jquery.d.ts en angular.d.ts

<reference path="../jquery/jquery.d.ts" />

y mi archivo de referencia de proveedor global se ve como:

<reference path=''../vendor/types/angular/angular.d.ts'' /> <reference path=''../vendor/types/angular/angular-mocks.d.ts'' /> <reference path=''../vendor/types/jasmine/jasmine.d.ts'' />


En mi caso tuve que usar

npm install -D @types/bootstrap

Y luego tuve que importar bootstrap

import * as bootstrap from ''bootstrap'';

Pero el paso más importante fue eliminar jquery.

import * as $ from ''jquery'';

De lo contrario me estaba dando este error:

TypeError: $ (...). Modal no es una función


Este trabajo para mi, lo agrego en la primera fila:
declare var $ :any;
este declarar $ tipo es any ,


Intenta instalar los typings para Bootstrap DefinitelyTyped

typings install --global --save dt~bootstrap


Solo agrega

import * as bootstrap from "bootstrap"; import * as $ from "jquery";

en su app.module.ts

E instale estos paquetes

npm install @ types / jquery --save-dev

npm install @ types / bootstrap --save-dev


Su problema se debe a la falta de propiedad con el nombre modal en el archivo jquery.d.ts .

Si está seguro de que esto funciona en JS puro, puede engañarlo de esta manera.

$scope.delete = function (id) { Photo.get({id: id}, function(result) { $scope.photo = result; (<any>$(''#deletePhotoConfirmation'')).modal(''show''); }); };

Además, puede encontrar un archivo d.ts adicional donde esta opción ya haya sido definida.

Intenta considerar this biblioteca que ya ha tenido opción modal

¡Buena suerte!


con versiones más nuevas de mecanografiado (> v2 creo):

npm install -D @types/bootstrap