CSS

容器 id
#nuxt
#
layout

nuxt.conf.js

  1. moudle.exports = {{
  2. // Global CSS
  3. css: [
  4. '@/assets/styles/reset.css',
  5. '@/assets/styles/common.css',
  6. '@/assets/styles/iconfont.css',
  7. '@/assets/style/border.css',
  8. 'swiper/css/swiper.min.css',
  9. ],
  10. // 在客户端中运行
  11. plugins: [
  12. { src: '@/assets/script/common', ssr: false}
  13. ]
  14. }

Vue 相关插件 use 配置

在 plugins 目录建立相关插件的 js 文件,如 vue-awsome-swiper.js

  1. import Vue from 'vue';
  2. import VueAwesomeSwiper from 'vue-awesome-swiper';
  3. Vue.use(VueAwesomeSwiper);

然后在 next.conf.js 中 plugins 再配置

  1. moudle.exports = {
  2. // ...
  3. css: [
  4. // ...
  5. 'swiper/css/swiper.min.css',
  6. ],
  7. plugins: [
  8. { src: '@/assets/script/common', ssr: false},
  9. { src: '@/plugins/vue-awesome-swipter', ssr: false}
  10. ]
  11. }

Server

与服务端(koa2)
controllers
libs
services
configs
db
routes
相关配置的放到 Server 目录

然后在 next.conf.js 中 server 再配置

  1. moudle.exports = {
  2. // ...
  3. server: {
  4. port: 3008,
  5. host: '0.0.0.0'
  6. }
  7. }

Axios 配置

config/config.js 配置一些常量

  1. const URL = {
  2. TX_CLASS: '//ke.qq.com/course/',
  3. IMG_BASE: '//tximg.jsplusplus.com/',
  4. API_BASE_URL: process.env.NODE_ENV === 'production'
  5. ? 'http://m.jsplusplus.com/'
  6. : 'http://localhost:3008/'
  7. }

utls/http.js

  1. import axios from 'axios';
  2. import qs from 'qs';
  3. import { URL } from '@/config/config';
  4. export default class HTTP {
  5. axiosPost(options){
  6. axios({
  7. url: URL.API_BASE_URL + options.url,
  8. method: 'post',
  9. header: {
  10. 'Content-Type': 'application/x-www-form-urlencoded'
  11. },
  12. data: qs.stringify(options.data)
  13. }).then((res) => {
  14. options.success(res.data);
  15. }).catch((err) => {
  16. options.error(error)
  17. })
  18. }
  19. axiosGet(options){
  20. axios(URL.API_BASE_URL + options.url).then((res) => {
  21. options.success(res.data);
  22. }).catch((err) => {
  23. options.error(error)
  24. })
  25. }
  26. }