Javascript BrowserslistError:未知的浏览器专业
我正在尝试将引导4与我的角度安装一起使用。我跑了 npm安装--保存bootstrap@next但我在运行时有一个休息:Javascript BrowserslistError:未知的浏览器专业,javascript,angular,bootstrap-4,Javascript,Angular,Bootstrap 4,我正在尝试将引导4与我的角度安装一起使用。我跑了 npm安装--保存bootstrap@next但我在运行时有一个休息: ./node_modules/css-loader?{"sourceMap":false,"importLoaders":1}!./node_modules/postcss-loader/lib?{"ident":"postcss","plugins":[null,null,null],"sourceMap":false}!./node_modules/bootstrap/d
./node_modules/css-loader?{"sourceMap":false,"importLoaders":1}!./node_modules/postcss-loader/lib?{"ident":"postcss","plugins":[null,null,null],"sourceMap":false}!./node_modules/bootstrap/dist/css/bootstrap.min.css
Module build failed: BrowserslistError: Unknown browser major
at error (C:\xampp\htdocs\tick_master_angular\web\node_modules\browserslist\index.js:37:11)
at Function.browserslist.checkName (C:\xampp\htdocs\tick_master_angular\web\node_modules\browserslist\index.js:320:18)
at Function.select (C:\xampp\htdocs\tick_master_angular\web\node_modules\browserslist\index.js:438:37)
at C:\xampp\htdocs\tick_master_angular\web\node_modules\browserslist\index.js:207:41
at Array.forEach (native)
at browserslist (C:\xampp\htdocs\tick_master_angular\web\node_modules\browserslist\index.js:196:13)
at Browsers.parse (C:\xampp\htdocs\tick_master_angular\web\node_modules\autoprefixer\lib\browsers.js:44:14)
at new Browsers (C:\xampp\htdocs\tick_master_angular\web\node_modules\autoprefixer\lib\browsers.js:39:28)
at loadPrefixes (C:\xampp\htdocs\tick_master_angular\web\node_modules\autoprefixer\lib\autoprefixer.js:56:18)
at plugin (C:\xampp\htdocs\tick_master_angular\web\node_modules\autoprefixer\lib\autoprefixer.js:62:18)
at LazyResult.run (C:\xampp\htdocs\tick_master_angular\web\node_modules\postcss-loader\node_modules\postcss\lib\lazy-result.js:270:20)
at LazyResult.asyncTick (C:\xampp\htdocs\tick_master_angular\web\node_modules\postcss-loader\node_modules\postcss\lib\lazy-result.js:185:32)
at LazyResult.asyncTick (C:\xampp\htdocs\tick_master_angular\web\node_modules\postcss-loader\node_modules\postcss\lib\lazy-result.js:197:22)
at processing.Promise.then._this2.processed (C:\xampp\htdocs\tick_master_angular\web\node_modules\postcss-loader\node_modules\postcss\lib\lazy-result.js:224:20)
at LazyResult.async (C:\xampp\htdocs\tick_master_angular\web\node_modules\postcss-loader\node_modules\postcss\lib\lazy-result.js:221:27)
at LazyResult.then (C:\xampp\htdocs\tick_master_angular\web\node_modules\postcss-loader\node_modules\postcss\lib\lazy-result.js:127:21)
@ ./node_modules/css-loader?{"sourceMap":false,"importLoaders":1}!./node_modules/postcss-loader/lib?{"ident":"postcss","sourceMap":false}!./src/styles.css 3:10-190
@ ./src/styles.css
@ multi ./src/styles.css
有人能帮忙吗?问题可能是您得到的最新版本有一些bug。我注意到bootstrap@4.0.0-beta.3导致了这个问题,但不是bootstrap@4.0.0-beta.2。检查你的是否相同。尝试卸载它并运行具有特定版本的内容
npm安装bootstrap@4.0.0-alpha.6
这解决了我的问题。Bootstrap的新版本出现了,它是v4.0.0-beta.2,并且您的package.json具有^bootstrap4.0.0-alpha.6,因此新的Bootstrap版本需要浏览器列表依赖性
要运行您的应用程序,请删除最新版本标记(^)并运行npm安装命令,同样的问题改变了我在package.json中的依赖关系
"dependencies": {
"@angular/animations": "^5.0.0",
"@angular/common": "^5.0.0",
"@angular/compiler": "^5.0.0",
"@angular/core": "^5.0.0",
"@angular/forms": "^5.0.0",
"@angular/http": "^5.0.0",
"@angular/platform-browser": "^5.0.0",
"@angular/platform-browser-dynamic": "^5.0.0",
"@angular/router": "^5.0.0",
"@ng-bootstrap/ng-bootstrap": "^1.0.0-beta.9",
"bootstrap": "^4.0.0-beta.3",
"core-js": "^2.4.1",
"font-awesome": "^4.7.0",
"zone.js": "^0.8.14"
}
至(将“引导程序”:“4.0.0-beta.2”更改为稳定版本)
然后,运行:
npm安装
ng发球
问题解决了 它现在可以工作,而无需Angular CLI:1.6.5的变通方法。Angular CLI依赖于不兼容版本的autoprefixer() 通过键入ng--version来验证版本。不要忘记更新package.json中的开发依赖项:
"@angular/cli": "1.6.5",
对于Bootstrap 4.0.0(发行版),我必须将CLI升级到1.6.5,而且它可以工作
"dependencies": {
"@angular/animations": "^5.0.0",
"@angular/common": "^5.0.0",
"@angular/compiler": "^5.0.0",
"@angular/core": "^5.0.0",
"@angular/forms": "^5.0.0",
"@angular/http": "^5.0.0",
"@angular/platform-browser": "^5.0.0",
"@angular/platform-browser-dynamic": "^5.0.0",
"@angular/router": "^5.0.0",
"@ng-bootstrap/ng-bootstrap": "1.0.0-beta.9",
"bootstrap": "4.0.0",
"core-js": "^2.4.1",
"font-awesome": "^4.7.0",
"jquery": "^3.2.1",
"popper.js": "^1.12.9",
"rxjs": "^5.5.2",
"zone.js": "^0.8.14"
},
"devDependencies": {
"@angular/cli": "^1.6.5",
"@angular/compiler-cli": "^5.0.0",
"@angular/language-service": "^5.0.0",
"@types/jasmine": "~2.5.53",
"@types/jasminewd2": "~2.0.2",
"@types/node": "~6.0.60",
"codelyzer": "^4.0.1",
"jasmine-core": "~2.6.2",
"jasmine-spec-reporter": "~4.1.0",
"karma": "~1.7.0",
"karma-chrome-launcher": "~2.1.1",
"karma-cli": "~1.0.1",
"karma-coverage-istanbul-reporter": "^1.2.1",
"karma-jasmine": "~1.1.0",
"karma-jasmine-html-reporter": "^0.2.2",
"protractor": "~5.1.2",
"ts-node": "~3.2.0",
"tslint": "~5.7.0",
"typescript": "~2.4.2"
}
对于仍有问题的人: 从angular-cli.json中手动删除bootsrap CSS的url
"styles":
[
**"../node_modules/bootstrap/dist/css/bootstrap.min.css",**
"../node_modules/font-awesome/css/font-awesome.min.css",
"styles.css"
]
我已经升级到Angular CLI 1.7.x,它开始工作正常。我推荐这个解决方案。我的意思是升级Angular CLI,它应该适合您 另一种解决方法是从节点模块/bootstrap/package.json中删除以下行
"browserslist": [
"last 1 major version", <----- delete this line
">= 1%", <----- delete this line
"Chrome >= 45",
"Firefox >= 38",
"Edge >= 12",
"Explorer >= 10",
"iOS >= 9",
"Safari >= 9",
"Android >= 4.4",
"Opera >= 30"
],
“浏览器列表”:[
“last 1 major version”Bootstrap 4不再使用CSS。在这个版本中使用SCS。因此,与其导入“~Bootstrap/SCSS/Bootstrap.CSS”
,不如,
您应该导入'~bootstrap/scss/bootstrap.scss'
我在bootstrap 4.1.1中遇到了同样的问题。解决方法是在package.json中将bootstrap版本更改为4.0.0-beta.2(不带插入符号),然后运行
npm install
ng serve
并添加import“~bootstrap/dist/css.bootstrap.css”
在您的style.css文件中。我坚持使用最新版本。作为临时解决办法,我在index.html的头部添加了引导样式,但将javascript内容保留在.angular cli.json中。我使用的是cli v 1.6.5和引导4.0.0,这不适用于本地和全局版本?node.js的最新版本?本地和全局angular/cli的版本是1.6.5,node是6.11,我相信我对“@ng bootstrap/ng bootstrap”:“^1.0.0”,“bootstrap”:“^4.0.0”的最终版本遇到了问题,这是可行的,但如何在不删除的情况下使其工作我遇到了同样的问题,我删除了“browserslist”元素,它成功了。
npm install
ng serve