一、创建项目

1、使用如下命令生成项目

vue init nuxt-community/starter-template testPro  --testPro为项目名称

2、进入到项目根目录下,使用npm install 安装依赖

3、npm run dev 在开发环境下运行项目

二、修改项目的host 和 port

在package.json文件中新增如下代码:

"config": {
"nuxt": {
"host": "0.0.0.0",
"port": "3333"
}
},
"scripts": {
"dev": "nuxt"
}

三、配置全局css样式

新建~assets/css/reset.css,并在nuxt.config.js中添加如下配置:

css: ['~assets/css/reset.css']

四、在nuxt中使用sass

使用nuxt-sass-resources-loader全局引入sass

cnpm install nuxt-sass-resources-loader --save-dev
modules: [
'nuxt-sass-resources-loader'
],
sassResources: ['~assets/sass/resources.scss'],

五、使用sass的mixin实现动态样式

当前位置 ~assets/sass/resources.scss

@mixin bg_img($path, $ext){
@media screen and (max-device-width: 768px){
background: url($path + '@1x.' + $ext);
}
@media screen and (min-device-width: 768px){
background: url($path + '@2x.' + $ext);
}
}

六、使用sass函数实现px2rem

1、方法一(通过插件动态的设置不同尺寸屏幕下的跟字体)当前位置 ~assets/sass/resources.scss

$baseFontSize: 10;//开发设备下的跟字体
@function px2rem($px){
@return $px/$baseFontSize * 1rem;
}

添加js修改跟字体 (当前位置 ~plugins/custom/rootFontSize.js)

var ui = 750;
// 自己设定的font值
var font = 20;
// 得到比例值
var ratio = ui/font;
var oHtml = document.documentElement;
var screenWidth = oHtml.offsetWidth;
// 初始的时候调用一次
getSize();
window.addEventListener('resize', getSize);
// 在resize的时候动态设置fontsize值
function getSize(){
screenWidth = oHtml.offsetWidth;
// 限制区间
// if(screenWidth <= 320){
// screenWidth = 320;
// }else if(screenWidth >= ui){
// screenWidth = ui;
// }
oHtml.style.fontSize = screenWidth/ratio + 'px';
}

使用rootFontSize.js (当前位置nuxt.config.js )

plugins: [
{
src: '~plugins/custom/rootFontSize.js', ssr: false
}
]

2、方法二(使用postcss插件)

postcss-pxtorem(将px自动转换成rem)

autoprefixer(自动为css选择器添加前缀)

cnpm install postcss-pxtorem autoprefixer --save-dev

nuxt.config.js中的配置如下

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

postcss: {
plugins: {
  'postcss-pxtorem':{
     rootValue: 40,
     propList: ['*']
   }
  },
  preset: {
     autoprefixer: true
  }
 }

}

七、实现接口代理

使用@nuxtjs/axios

npm install @nuxtjs/axios

nuxt.config.js中配置如下:

modules: ['@nuxtjs/axios'],
axios: {
proxy: true
},
proxy: {
'/api/': {
target: 'http://lichunshan.top:3000',
pathRewrite: {'^/api': ''}}
}

八、使用第三方插件库(vant为例)

cnpm install vant --save

新建文件~plugins/three_sides/vant.js

vant.js文件如下:

import Vue from 'vue';
import Vant from 'vant';
import 'vant/lib/index.css'; Vue.use(Vant);

nuxt.config.js中配置如下:

plugins: [
{
src: '~plugins/three_sides/vant.js', ssr: true
}
]

九、开发环境下运行

npm run build

npm run start/pm2 start npm --name "nuxt-demo" -- run start

nuxt.js实战之开发环境配置的更多相关文章

  1. 《Python3 网络爬虫开发实战》开发环境配置过程中踩过的坑

    <Python3 网络爬虫开发实战>学习资料:https://www.cnblogs.com/waiwai14/p/11698175.html 如何从墙内下载Android Studio: ...

  2. 《React Native 精解与实战》书籍连载「Node.js 简介与 React Native 开发环境配置」

    此文是我的出版书籍<React Native 精解与实战>连载分享,此书由机械工业出版社出版,书中详解了 React Native 框架底层原理.React Native 组件布局.组件与 ...

  3. Ionic 入门与实战之第二章第一节:Ionic 环境搭建之开发环境配置

    原文发表于我的技术博客 本文是「Ionic 入门与实战」系列连载的第二章第一节,主要对 Ionic 的开发环境配置做了简要的介绍,本文介绍的开发环境为 Mac 系统,Windows 系统基本类似,少许 ...

  4. Auto.js pro 开发环境配置

    本文仅供学习交流使用,如侵立删!demo下载见文末 Auto.js pro 开发环境配置 准备: 1.Auto.js Pro Auto.js 已暂停维护 -下载链接放在了文章底部,有需要自行下载 2. ...

  5. SDL 开发实战(一):SDL介绍及开发环境配置

    一.什么是SDL? SDL是 “Simple DirectMedia Layer”的缩写,SDL是一个开源的跨平台的多媒体库,封装了复杂的音视频底层操作,简化了音视频处理的难度. SDL使用C语言写成 ...

  6. Mac电脑配置IOS React Native开发环境配置笔记

    React Native(以下简称RN)的开发环境配置直接参考官方文档即可完成,不过对小白来说东西有点多,有些名词不是很好理解,这里就官方的安装文档稍微展开说一下. 中文版配置说明:不错的中文说明.官 ...

  7. windows下的Nodejs及npm的安装、常用命令,Nodejs开发环境配置

    http://www.cnblogs.com/webstorm/p/5744942.html ***************************************** 第一步:下载Nodej ...

  8. Android手机应用程序开发环境配置(Eclipse+Java+ADT)

    参考: Java手机游戏开发实例简明教程 http://dev.10086.cn/blog/?uid-82940-action-viewspace-itemid-1772 Eclipse下载: htt ...

  9. ios开发环境配置及cordova安装与常用命令

    一.ios开发环境配置 1.首先要有台Mac Book,如果有Mac Book,跳过步骤2.3.4,如果没有,执行步骤2.3.4: 2.下载并安装VMware Workstation,最好是下最新版本 ...

随机推荐

  1. vue的定位

    高德定位 https://blog.csdn.net/YY110621/article/details/87921605(copy) 话不多说,直接写方法步骤,需要的直接拿去放在自己项目中即可使用先看 ...

  2. hive字符函数

  3. windows php7 安装redis扩展

    1,首先查看phpinfo 这会决定扩展文件版本(特别注意以php版本的architecture是x86还是64为准,不能以操作系统为准): 2.根据PHP版本号,编译器版本号和CPU架构  一定要根 ...

  4. 关于解决Missing Number之类的算法问题

    停止刷题已经三周了,有些想念.最近总算完成了公司代码的重构,于是要继续开始学习算法. 先来看leetcode上面第268题: Given an array containing n distinct ...

  5. DButils实现数据库表下划线转bean中驼峰格式

    准备: QueryRunner queryRunner = new QueryRunner();//开启下划线->驼峰转换所用BeanProcessor bean = new GenerousB ...

  6. 猜数字游戏 在控制台运行--java详解!了;来玩

    import java.util.Scanner;//导入包 import java.util.Scanner; 注意格式 符号的使用 public class Demo{ //猜数字游戏 练习 pu ...

  7. JS--操作DOM树

    <ul id="ul1"> <li id="li1">111</li> <li id="li2"& ...

  8. 原子变量与CAS算法(二)

    一.锁机制存在的问题 (1)在多线程竞争下,加锁.释放锁会导致比较多的上下文切换和调度延时,引起性能问题. (2)一个线程持有锁会导致其它所有需要此锁的线程挂起. (3)如果一个优先级高的线程等待一个 ...

  9. linux网络配置+远程工具使用

    ifconfig 网卡名 ip地址 就可以设定ip地址 只是临时改变ip地址,重启后会失效 secure crt  更改语言,用gb 和 utf8 两处修改

  10. Opencv画图操作

    1. 画矩形 MyRect rect;rect.left = 5;rect.top = 5;rect.right = 100;rect.bottom = 100;IplImage * pColorIm ...