Nuxt.js 是一个基于 Vue.js 的服务端渲染应用框架,它在支持现代浏览器的同时也可以兼容 IE11。不过,在兼容 IE11 的时候,需要注意一些细节。
首先,在使用 Nuxt.js 时,需要在 nuxt.config.js 中添加如下配置:
build: {
transpile: [/^element-ui/],
** You can extend webpack config here
extend(config, ctx) {
if (ctx.isClient) {
config.target = 'web';
其中,transpile 配置用于指定需要编译的文件或者模块,这里以 Element-UI 为例。在 extend 中,需要将 target 设置为 'web',以确保代码能够在 IE11 中正常运行。
其次,需要注意一些 Vue.js 的语法问题。在使用 Vue.js 时,如果使用了一些不支持 IE11 的语法,例如箭头函数、Promise、Set 等等,需要使用 polyfill 进行兼容。
可以使用 babel-polyfill 或者 core-js 等库来实现 polyfill。在 Nuxt.js 中,可以在 nuxt.config.js 中添加如下配置:
build: {
babel: {
presets({ isServer }) {
return [
'@nuxt/babel-preset-app',
targets: isServer ? { node: '10.0.0' } : { ie: '11' },
其中,targets 配置用于指定需要兼容的浏览器或者环境。在这里,我们指定了在客户端中需要兼容 IE11。
最后,需要在 HTML 中添加如下 meta 标签:
<meta http-equiv="X-UA-Compatible" content="IE=edge">
这个 meta 标签的作用是告诉 IE11 使用最新的渲染引擎来渲染页面,确保页面的兼容性。
综上所述,如果您需要在 Nuxt.js 中兼容 IE11,需要注意以上几个细节。