Definitelytyped: @ types / angular-ui-router | angular-ui-bootstrap | angular-translate "Modul 'angular' tidak memiliki anggota 'ui' yang diekspor"

Dibuat pada 17 Jul 2016  ·  19Komentar  ·  Sumber: DefinitelyTyped/DefinitelyTyped

  • [x] Saya mencoba menggunakan file angular-ui-router/angular-ui-router.d.ts dalam repo ini dan mengalami masalah.

angular-ui-router tidak berfungsi saat menggunakan @ types / angular-ui-router.

"Module 'angular' has no exported member 'ui'"

setiap file sekarang berwarna merah, dan tidak dapat dikompilasi

Sepertinya memiliki <reference types="angular" /> bersama dengan import * as angular from 'angular'; tidak akan berhasil

Hal yang sama terjadi dengan angular-ui-bootstrap

Modul yang bergantung pada @types/angular langsung rusak. Saya tidak menggunakan variabel global sudut dan ketika saya melakukan import * as angular from 'angular' kemudian mencoba mengakses namespace modul, seperti angular.ui.bootstrap , angular.translate , angular.ui , mereka semua memberikan kesalahan Module 'angular' has no exported member 'ui'

kode di bawah ini gagal:

'use strict';

import * as angular from 'angular';

class Config {
    static $inject = ['$stateProvider', '$urlRouterProvider'];

    constructor($stateProvider: angular.ui.IStateProvider, $urlProvider: angular.ui.IUrlRouterProvider) {
         /*...*/
    }
}

angular.module('Module', []).config(Config);
@types Bug

Komentar yang paling membantu

Masalah yang sama ... Baru saja menginstal @ types / angular

diimpor sudut dalam file naskah ketikan:
import * sebagai sudut dari 'angular';

Namun namespace UI tidak tersedia saat ng.

Mendapatkan:

Modul 'angular' tidak memiliki anggota 'ui' yang diekspor.

Semua 19 komentar

Ini harus diperbaiki oleh https://github.com/DefinitelyTyped/DefinitelyTyped/pull/10170

Anda bisa menggunakannya sebagai modul:

import * as angular from 'angular';
import "angular-ui-router";

class Config {
    static $inject = ['$stateProvider', '$urlRouterProvider'];

    constructor($stateProvider: angular.ui.IStateProvider, $urlProvider: angular.ui.IUrlRouterProvider) {
        /*...*/
    }
}

angular.module('Module', []).config(Config);

atau sebagai global tetapi gunakan /// <reference types=... />

/// <reference types="angular" />
/// <reference types="angular-ui-router" />

class Config {
    static $inject = ['$stateProvider', '$urlRouterProvider'];

    constructor($stateProvider: angular.ui.IStateProvider, $urlProvider: angular.ui.IUrlRouterProvider) {
        /*...*/
    }
}

angular.module('Module', []).config(Config);

@mhegazy apakah ini perilaku baru untuk 2.0+ saat menggunakan @types ? tidak bisa memiliki global "sejati" yang Anda masukkan sekali dan tersedia di mana-mana?

@types/angular-ui-router dan @types/angular-ui-bootstrap masih rusak btw

clipboard01

@mhegazy apakah ini perilaku baru untuk 2.0+ saat menggunakan @types? tidak bisa memiliki global "sejati" yang Anda masukkan sekali dan tersedia di mana-mana?

kamu bisa. /// <reference types="angular" /> seharusnya membuat ng tersedia dalam kompilasi Anda.

@ types / angular-ui-router dan @ types / angular-ui-bootstrap masih rusak btw

yang terbaru di https://github.com/DefinitelyTyped/DefinitelyTyped/tree/types-2.0 terlihat tepat bagi saya. dapatkah Anda menunjukkan apa yang tidak berhasil untuk Anda?
bagaimana Anda mengimpor sudut?

Saya menggunakan import * as angular from 'angular' . ketika saya mencoba menggunakan angular.ui.IStateProvider (dari angular-ui-router ), tidak ada sudut. bahkan jika saya menambahkan angular-ui-router di file lain (modul dasar saya), sekarang saya perlu memasukkannya ke dalam setiap file?

Anda perlu mengimpornya juga. import "angular-ui-router"; atau tambahkan referensi tipe padanya /// <reference types="angular-ui-router" />

silakan beralih di tsconfig.json yang membuatnya berperilaku lama, saya tidak dapat memfaktorkan ulang proyek saya saat ini :(

silakan beralih di tsconfig.json yang membuatnya berperilaku lama

apa cara "lama"?

jika Anda menggunakan file deklarasi yang Anda dapatkan dari pengetikan atau tsd, seharusnya berfungsi tanpa perubahan. ini hanya untuk paket @types di npm. jika Anda tidak ingin menggunakannya saat ini, Anda tidak perlu melakukannya.

Saya juga mengalami masalah yang sama.

Masalah yang sama ... Baru saja menginstal @ types / angular

diimpor sudut dalam file naskah ketikan:
import * sebagai sudut dari 'angular';

Namun namespace UI tidak tersedia saat ng.

Mendapatkan:

Modul 'angular' tidak memiliki anggota 'ui' yang diekspor.

Mengapa ini ditutup? Apakah itu berarti tidak akan pernah diperbaiki, atau adakah masalah lain untuk itu? (masih rusak untukku)

Masih patah hati untukku juga

Dan masih

@asadsahi Itu karena @types/angular sebenarnya tidak memiliki ui anggota. Anggota ini ditentukan oleh @types/angular-ui-router .

Yang harus dipasang terpisah:

npm i -D @types/angular-ui-router

Ada yang belum menemukan solusi?
@mhegazy bisakah kamu buka kembali tiketnya?

Saya baru saja mendapat masalah ini saat mencoba memutakhirkan angular-ui-router dari 1.0.0-beta.1 ke 1.0.0-rc.1. Saya juga ingin memutakhirkan TS, dan menyingkirkan pengetikan yang mendukung @types ... Semua ini saya dapatkan di aplikasi angular1 yang dihasilkan air mancur yeoman. Itu membuat saya marah karena saya membuang-buang waktu saya :(
@mhegazy bisakah kamu buka kembali tiketnya?

Ini masih menjadi masalah. Solusi saya untuk saat ini:

    "fix-duplicate-dts": "rimraf node_modules/@types/oclazyload/node_modules/@types/angular && rimraf node_modules/@types/angular-ui-bootstrap/node_modules/@types/angular && rimraf node_modules/@types/ngtoaster/node_modules/@types/angular && rimraf node_modules/@types/angular-translate/node_modules/@types/angular && rimraf node_modules/@types/angular-mocks/node_modules/@types/angular && rimraf node_modules/@types/angular-gridster/node_modules/@types/angular && rimraf node_modules/@types/angular-storage/node_modules/@types/angular && rimraf node_modules/@types/ui-select/node_modules/@types/angular",
    "postinstall": "npm run fix-duplicate-dts",
    "postuninstall": "npm run fix-duplicate-dts"

Kadang-kadang saya hanya perlu menjalankan tugas secara manual, tetapi sebagian besar waktu itu dilakukan dengan skrip postinstall.

Saya mengalami kesalahan Module 'angular' has no exported member 'xxx'. setelah saya meningkatkan ketergantungan saya menjadi @types/[email protected] .
Dalam kasus saya, ini terkait dengan beberapa definisi tipe sudut di node_modules saya. Jenis sudut ditentukan di node_modules/@types/angular dan node_modules/@types/ng-file-upload/node_modules/@types/angular .

Hal ini karena benang diselesaikan bersudut dengan versi yang berbeda. Saya memiliki dua entri untuk sudut dengan resolusi berbeda di file yarn.lock:

"@types/angular@*":
  version "1.6.7"
  resolved "https://registry.yarnpkg.com/@types/angular/-/angular-1.6.7.tgz#8935a2b4a796fe7ca4f59f533f467804722fb0c4"
  dependencies:
    "@types/jquery" "*"

"@types/[email protected]":
  version "1.6.32"
  resolved "https://registry.yarnpkg.com/@types/angular/-/angular-1.6.32.tgz#fc791aad038227d9413eb5e552993e1076f8a509"

"@types/ng-file-upload@^11.1.31":
  version "11.1.34"
  resolved "https://registry.yarnpkg.com/@types/ng-file-upload/-/ng-file-upload-11.1.34.tgz#670fd0515c8e08668b27b7bbe30356b3b8011780"
  dependencies:
    "@types/angular" "*"

Menghapus yarn.lock dan pemasangan ulang benang menyelesaikan masalah tetapi itu memodifikasi terlalu banyak ketergantungan lain dalam kasus saya.

Menggunakan yarn install --flat mungkin akan menyelesaikan masalah tetapi saya tidak ingin mengubah bagaimana semua dependensi diselesaikan.

Jadi saya memperbaiki masalah ini dengan mengubah file yarn.lock secara manual menjadi

"@types/angular@*", "@types/[email protected]":
  version "1.6.32"
  resolved "https://registry.yarnpkg.com/@types/angular/-/angular-1.6.32.tgz#fc791aad038227d9413eb5e552993e1076f8a509"

"@types/ng-file-upload@^11.1.31":
  version "11.1.34"
  resolved "https://registry.yarnpkg.com/@types/ng-file-upload/-/ng-file-upload-11.1.34.tgz#670fd0515c8e08668b27b7bbe30356b3b8011780"
  dependencies:
    "@types/angular" "*"
Apakah halaman ini membantu?
0 / 5 - 0 peringkat