Angular 6: не удается найти имя «bootbox» - PullRequest
0 голосов
/ 28 мая 2018

Я пытаюсь использовать bootbox в своем угловом приложении.Я следовал инструкциям из этого ответа .Но когда я собираю проект, я получаю

ошибку TS2304: не удается найти имя 'bootbox'.

Мой файл package.json

"dependencies": {
    "@angular/animations": "6.0.2",
    "@angular/common": "6.0.2",
    "@angular/compiler": "6.0.2",
    "@angular/core": "6.0.2",
    "@angular/forms": "6.0.2",
    "@angular/http": "6.0.2",
    "@angular/platform-browser": "6.0.2",
    "@angular/platform-browser-dynamic": "6.0.2",
    "@angular/router": "6.0.2",
    "ag-grid": "17.1.1",
    "ag-grid-angular": "17.1.0",
    "angular2-tree-component": "3.1.0",
    "bootbox": "^4.4.0",
    "bootstrap": "^3.3.7",
    "core-js": "2.5.4",
    "install": "^0.11.0",
    "jquery": "3.3.1",
    "mydatepicker": "2.6.3",
    "ng2-webstorage": "2.0.0",
    "primeng": "6.0.0-alpha.1",
    "rxjs": "6.0.0",
    "rxjs-compat": "6.1.0",
    "zone.js": "0.8.26"
},
"devDependencies": {
    "@angular-devkit/build-angular": "~0.6.3",
    "@angular/cli": "~6.0.3",
    "@angular/compiler-cli": "6.0.2",
    "@angular/language-service": "6.0.2",
    "@types/bootbox": "^4.4.32",
    "@types/bootstrap": "^4.1.0",
    "@types/core-js": "0.9.46",
    "@types/jasmine": "~2.8.6",
    "@types/jasminewd2": "~2.0.3",
    "@types/jquery": "^3.3.1",
    "@types/node": "8.9.5",
    "codelyzer": "~4.2.1",
    "jasmine-core": "~2.99.1",
    "jasmine-spec-reporter": "~4.2.1",
    "karma": "~1.7.1",
    "karma-chrome-launcher": "~2.2.0",
    "karma-coverage-istanbul-reporter": "~1.4.2",
    "karma-jasmine": "~1.1.1",
    "karma-jasmine-html-reporter": "0.2.2",
    "protractor": "~5.3.0",
    "ts-node": "~5.0.1",
    "tslint": "~5.9.1",
    "typescript": "~2.7.2"
}

Мой angular.json

"scripts": [
    "node_modules/core-js/client/shim.min.js",
    "src/assets/js/Chart.bundle.min.js",
    "node_modules/jquery/dist/jquery.js",
    "node_modules/bootstrap/dist/js/bootstrap.js",            
    "node_modules/bootbox/bootbox.js",
    "src/assets/js/custom.js"
]

Полагаю, я правильно следовал инструкциям, но не смог найти, где я ошибся.

Ответы [ 2 ]

0 голосов
/ 08 августа 2018

Шаг 1: Установите jquery, bootstrap, а затем bootbox, используя npm

Шаг 2: В вашем angular.json (angular-cli.json для Angular <= v5), добавьте следующее в <code>scripts section

"node_modules/jquery/dist/jquery.js",
"node_modules/bootstrap/dist/js/bootstrap.js",            
"node_modules/bootbox/bootbox.js",  

Шаг 3: Установите типы

npm install @types/jquery --save
npm install @types/bootbox --save

Шаг 4: Сборка проекта и проверка успешности сборки.Если сборка прошла успешно, остановитесь здесь.

Шаг 5: Если сборка не удалась, создайте файл с именем typings.d.ts в папке src и добавьте следующее содержимоеи построить проект.Это должно решить проблему.

declare var bootbox: any;
0 голосов
/ 29 мая 2018

Попробуйте импортировать файл загрузочной коробки в свой компонент, например -

 import * as bootbox from 'bootbox/bootbox.js'
...