nuxt学习---03---nuxt.config.js

1.配置静态模版的头部信息:

示例中的hid为设置的唯一标识,若你在设置某个属性时添加了一样的hid,会将原来的覆盖掉。

module.exports = {
  head: {
    title: 'first-demo',
    htmlAttrs: {
      lang: 'en'
    },
    meta: [
      { charset: 'utf-8' },
      { name: 'viewport', content: 'width=device-width, initial-scale=1' },
      { hid: 'description', name: 'description', content: '' },
      { name: 'format-detection', content: 'telephone=no' }
    ],
    link: [
      { rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' }
    ],
    script: [
    { hid: 'selfjs111', src: 'xxxxxx.js', type: 'text/javascript'}
    ]
  }
}

可以针对不同的视图页面,设置特定的头部信息。在 head 方法里可通过 this 关键字来获取组件的数据

在这里插入图片描述

在这里插入图片描述
2.中间件:

中间件允许用户定义一个函数运行在一个页面或一组页面渲染之前。每个中间件应放置在middleware目录中。文件名将会成为中间件名称(例如:middleware/test.js, 那么test即是中间件的名称).一个中间件接收context作为第一个参数。

实例:
在这里插入图片描述
my-middleware-test.js文件内容如下:

export default function(context) {
  var a = context
  console.log('中间间的测试content:', a)
   return a ? true : false
}

在nuxt.config.js 、 layouts 或者 pages 中使用中间件:

  • 在nuxt.config.js中配置
module.exports = {
  router: {
    middleware: 'my-middleware-test' // my-middleware-test将在每一个路由改变时调用
  },
 }
  • 可以将 middleware 添加到指定的布局或者页面
<script>
export default {
  middleware: 'my-middleware-test'
} 
</script>

3.插件:

Nuxt.js 允许在运行 Vue.js 应用程序之前执行 js 插件
插件目录 plugins 用于组织那些需要在 根vue.js应用 实例化之前需要运行的 Javascript 插件。

备注:在任何 Vue 组件的生命周期内, 只有 beforeCreate 和 created 这两个方法会在 客户端和服务端被调用。其他生命周期函数仅在客户端被调用

实例:
在这里插入图片描述
在nuxt.config.js中进行配置:

module.exports = {
// Plugins to run before rendering page: https://go.nuxtjs.dev/config-plugins
  plugins: [
    '@/plugins/vant',
    '@/plugins/vue-notifications',
    '@/plugins/axios',
    '@/plugins/env-varas'
  ]
}

配置只在客户端运行的插件(配置ssr: false即可)

需要注意的是:由于Nuxt.js 2.4,模式已被引入作为插件的选项来指定插件类型,可能的值是:client 或 server, ssr:false 在下一个主要版本中弃用,将过渡为 mode: 'client’或mode: ‘server’。

在nuxt.config.js中进行配置:

module.exports = {
// Plugins to run before rendering page: https://go.nuxtjs.dev/config-plugins
  plugins: [
    '@/plugins/vant',
    '@/plugins/vue-notifications',
    '@/plugins/axios',
    {src:'@/plugins/env-varas', ssr: false}
  ]
}

插件详情请参考:

https://www.nuxtjs.cn/guide/plugins

4.配置样式css:
定义全局的样式,需要在该配置项下引入
在nuxt.config.js中进行配置:

module.exports={
// Global CSS: https://go.nuxtjs.dev/config-css
  css: [
    'vant/lib/index.css',
    '~assets/css/common.css'
  ]
}

5.配置loading:

在页面切换的时候,Nuxt.js 使用内置的加载组件显示加载进度条。你可以定制它的样式,禁用或者创建自己的加载组件

在nuxt.config.js中进行配置:

// 禁用加载进度条
module.exports = {
	loading: false
}
// 使用自定义的加载组件
module.exports = {
	loading: '~components/loading.vue'
}

自定义加载组件的相关写法内容参考:

https://www.nuxtjs.cn/api/configuration-loading

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Nuxt.js中使用vue-seamless-scroll,首先需要在plugins目录下创建一个vue-seamless-scroll.js文件,并在文件中导入Vue和SeamlessScroll组件,然后使用Vue.use(SeamlessScroll)进行注册。 接下来,在nuxt.config.js文件中的plugins配置项中添加如下内容: ```javascript plugins: [ '@/plugins/element-ui', '@/plugins/axios', { src: '@/plugins/vue-seamless-scroll', ssr: false }, ] ``` 这样就可以将vue-seamless-scroll插件引入到Nuxt.js项目中了。 然后,在需要使用滚动组件的文件中,使用`<vue-seamless-scroll>`标签,并传入相应的数据和类名等参数。例如: ```html <vue-seamless-scroll :data="runningData" :class-option="scrollOption" class="scroll-container"> <div class="flex-row" v-for="item in runningData" :key="item.id"> <span class="row-1 row-nomal">{{ item.mbShowName }}</span> <span class="row-2 row-nomal">{{ item.mbShowVal }}</span> <span class="row-3 row-nomal">{{ item.updateTime | dateFilter }}</span> </div> </vue-seamless-scroll> ``` 这样就可以在Nuxt.js中使用vue-seamless-scroll组件了。 如果你在公司的基于Nuxt.js的项目中使用滚动组件后刷新页面出现"window is not defined"的错误,可能是因为滚动组件依赖于浏览器环境,而在服务器端渲染时无法访问到window对象。解决这个问题可以将ssr选项设置为false,如前面的配置所示。这样就可以避免在服务器端渲染时出现该错误。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [在 Nuxt中使用滚动组件 vue-seamless-scroll](https://blog.csdn.net/weixin_44769310/article/details/116144924)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值