nextJS使用注意事项

项目参考 nextJs-yicha

1. 采用方案

create-next-app、antd
(1)安装
npx create-next-app --example with-ant-design myApp

2. 样式加载方案

less + cssModule

3. 同时使用css和sass

// next.config.js

const withCSS = require('@zeit/next-css');
const withSass = require('@zeit/next-sass');

module.exports = {
  webpack(config, ...args) {
    config = withCSS().webpack(config, ...args);
    config = withSass().webpack(config, ...args);
  }
}

4. 公共头部方案

1. 设置一个公共组件 Layout

import Head from 'next/head';
export default ({children}) => (
  <div>
    <Head>
      <title>公共头部</title>
    </Head>
    {children}
    <footer></footer>
  </div>
)

2. 使用方法

import Layout from '....';

export default () => (
  <Layout>
    // content
  </Layout>
)

5. 设置icon,正在head自定义组件中添加favicon.ico

<link rel="icon" href="/static/favicon.ico"/>

6. 图片懒加载(lazysizes)

在layout里面进行引用

import 'lazysizes';

7. 请求跨域解决方案

用node重新起一个服务器作为中间层,通过node进行请求,得到数据后再把数据返回给客户端,参照server.js

原文地址:https://www.cnblogs.com/usebtf/p/11224546.html