当前位置: 首页 > news >正文

Nuxt 开发 - 项目初始化

Nuxt是基于Vue的一个应用框架,采用服务端渲染(SSR),可以让用户的Vue单页面应用(SPA)也可以有利于SEO。

项目初始化

参考:https://zh.nuxtjs.org/guide/installation

$ npm install -g npx
$ npx create-nuxt-app <项目名>

安装过程中的配置选项:

  • ? Project name meituan-app
  • ? Project description My neat Nuxt.js project
  • ? Use a custom server framework koa
  • ? Use a custom UI framework element-ui
  • ? Choose rendering mode Universal
  • ? Use axios module yes
  • ? Use eslint yes
  • ? Use prettier no
  • ? Author name cedric
  • ? Choose a package manager npm
$ npm install --update-binary

项目初始化后的配置

1. 使用ES6的 import/export

node本身不支持import export 指令,项目想要使用import 需要在项目中引入babel 进行处理,所以在package.json中做如下修改:(参考:http://www.ruanyifeng.com/blog/2016/01/babel.html)

"scripts": {
    "dev": "cross-env NODE_ENV=development nodemon server/index.js --watch server --exec babel-node",
    "build": "nuxt build",
    "start": "cross-env NODE_ENV=production node server/index.js --exec babel-node",
    "generate": "nuxt generate",
    "lint": "eslint --ext .js,.vue --ignore-path .gitignore .",
    "precommit": "npm run lint"
  },

如果报错:[nodemon] failed to start process, "babel-node" exec not found

需要在根目录新建 .babelrc文件
里面写入:

{
    "presets": ["es2015"]
}

然后安装:

$ npm install babel-preset-es2015

$ npm install babel-cli -S 

2. 安装 sass

$  npm install sass-loader node-sass

安装后可以会有提示:
npm WARN acorn-jsx@5.0.0 requires a peer of acorn@^6.0.0 but none is installed. You must install peer dependencies yourself.
npm WARN eslint-plugin-vue@4.7.1 requires a peer of eslint@^3.18.0 || ^4.0.0 but none is installed. You must install peer dependencies yourself.

此时,需要安装:

$ npm i eslint@^3.18.0
$ npm i acorn@^6.0.0

3. 修改 nuxt.config.js

css: [
    'element-ui/lib/theme-chalk/reset.css',
    'element-ui/lib/theme-chalk/index.css'
],

...


build: {
    /*
    ** You can extend webpack config here
    */
    extend(config, ctx) {
      // Run ESLint on save
      if (ctx.isDev && ctx.isClient) {
        config.module.rules.push({
          enforce: 'pre',
          test: /\.(js|vue)$/,
          loader: 'eslint-loader',
          exclude: /(node_modules)/
        })
      }
    },
    cache: true
}

初始化后的项目参考:

https://github.com/caochangkui/meituan-app-nuxt/tree/nuxt-init
可在此基础上进行项目开发

转载于:https://www.cnblogs.com/cckui/p/10063550.html

相关文章:

  • 赖世雄:新中考英语听说满分冲刺 笔记
  • MariaDB数据基础应用
  • 百度小程序遇到的问题
  • 【总结整理】房产类---转自人人都是产品经理
  • Mac mojova 10.14.1 安装 Cocoapods
  • RabbitMQ的前世今生
  • SpringBoot服务器压测对比(jetty、tomcat、undertow)
  • HDU-1087-Super Jumping! Jumping! Jumping!(DP+上升子序列)
  • 比特币代码分析7 交易校验
  • rsync + inotify 数据实时同步
  • JQuery each循环跳出和结束
  • 从paxos到zookeeper 分布式一致性原理与实践
  • 「CH2101」可达性统计 解题报告
  • java websocket学习
  • 1600802047 android 第三次作业(音乐播放器)
  • 03Go 类型总结
  • Angular js 常用指令ng-if、ng-class、ng-option、ng-value、ng-click是如何使用的?
  • GitUp, 你不可错过的秀外慧中的git工具
  • HTML5新特性总结
  • IDEA常用插件整理
  • JavaSE小实践1:Java爬取斗图网站的所有表情包
  • Java多线程(4):使用线程池执行定时任务
  • js
  • Linux链接文件
  • Quartz实现数据同步 | 从0开始构建SpringCloud微服务(3)
  • 搭建gitbook 和 访问权限认证
  • 对JS继承的一点思考
  • 基于Javascript, Springboot的管理系统报表查询页面代码设计
  • 精彩代码 vue.js
  • 排序算法之--选择排序
  • 前端_面试
  • 小程序测试方案初探
  • 正则表达式小结
  • Nginx实现动静分离
  • 基于django的视频点播网站开发-step3-注册登录功能 ...
  • ​【C语言】长篇详解,字符系列篇3-----strstr,strtok,strerror字符串函数的使用【图文详解​】
  • #Lua:Lua调用C++生成的DLL库
  • #pragma once与条件编译
  • #传输# #传输数据判断#
  • #中的引用型是什么意识_Java中四种引用有什么区别以及应用场景
  • (TipsTricks)用客户端模板精简JavaScript代码
  • (动手学习深度学习)第13章 计算机视觉---图像增广与微调
  • (分类)KNN算法- 参数调优
  • (附源码)spring boot车辆管理系统 毕业设计 031034
  • (附源码)springboot 个人网页的网站 毕业设计031623
  • (附源码)springboot家庭财务分析系统 毕业设计641323
  • (附源码)springboot优课在线教学系统 毕业设计 081251
  • (六)vue-router+UI组件库
  • (六)什么是Vite——热更新时vite、webpack做了什么
  • (全部习题答案)研究生英语读写教程基础级教师用书PDF|| 研究生英语读写教程提高级教师用书PDF
  • (四)七种元启发算法(DBO、LO、SWO、COA、LSO、KOA、GRO)求解无人机路径规划MATLAB
  • (未解决)jmeter报错之“请在微信客户端打开链接”
  • .NET Entity FrameWork 总结 ,在项目中用处个人感觉不大。适合初级用用,不涉及到与数据库通信。
  • .Net IE10 _doPostBack 未定义
  • .NET运行机制