原文链接:https://blog.csdn.net/Young_Gao/article/details/93605428

一、创建项目

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

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

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

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

二、修改项目的host 和 port

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

"config": {
"nuxt": {
"host": "192.168.124.4", // 此处可以改成自己的ip
"port": "1818" // 端口可以随意更改
}
},

 

三、配置全局css样式

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

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

四、在nuxt中使用sass

只需要安装 node-sass sass-loader 就可以了

npm i node-sass sass-loader -D

如果需要引入.scss文件,只需在nuxt.config.js中添加如下配置:

css:[
'~assets/common.scss'
],

如果需要引入scss全局变量或函数之类的话,需要如下步骤

  1)安装此插件

    cnpm install --save-dev @nuxtjs/style-resources

  2)接下来我们需要修改nuxt.config.js里面的配置,如下:

来源https://blog.csdn.net/WU5229485/article/details/99291603

export default {
modules: [
'@nuxtjs/style-resources',
],
styleResources: {
scss: './assets/variables.scss',
less: './assets/**/*.less',
// sass: ... 需要什么配置什么,这里是全局的 根据需要配置,没有可以不配置
}
}

  

五、使用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 = 100;
// 得到比例值
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

在plugins文件夹中新建文件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
}
] // 如果plugins对象中已有内容的话只需将对象追加在后面即可
例如
plugins: [
{
src: '~plugins/rootFontSize.js', ssr: false
},
{
src: '~plugins/vant.js', ssr: true
}
],

  

  

nuxt+vant+rem项目构建的更多相关文章

  1. 基于Cmake+QT+VS的C++项目构建开发编译简明教程

    目录 一.工具下载与安装 1.     Qt 2.     Visual Studio 2015 3.     Cmake 二.C++及Qt项目构建 1.     基于VS构建Qt项目 2.     ...

  2. 在Redhat上为.Net 项目构建基于Jenkins + Github + Mono 的持续集成环境

    在Redhat enterprise 6.5 的服务器上,为在gutub 上的 .net 项目构建一个持续集成环境,用到了Jenkins和mono.因公司的服务器在内网,访问外网时要通过代理,所以在很 ...

  3. 前端项目构建之yeoman

    各位好啊,我又和大家见面了,也许你已经不记得大明湖畔的容嬷嬷,但是只要记得博客园中的我就好,希望我的博客能像一股清风,为你驱散炎热的酷暑,好了,废话不多说,开始上干货,我今天带给大家的是前端工程化开发 ...

  4. 前后端分离之前端项目构建(grunt+require+angular)

    前言 前段时间做了一个项目,前端开发页面,然后把代码给到后端同学,后端同学通过vm再来渲染页面.后来才发现,这种方式简直是太low了,因为前端代码在服务端同学那里,每次前端需要更改的时候都需要去到服务 ...

  5. 前端项目构建工具---Grunt

    什么是Grunt? grunt是javascript项目构建工具,在grunt流行之前,前端项目的构建打包大多数使用ant.(ant具体使用 可以google),但ant对于前端而言,存在不友好,执行 ...

  6. 准备阶段-maven项目构建

    依据我现阶段对maven的了解,具使用POM管理项目和强大的repository资源管理库支持. 在项目建立初期,对网站的可拓展.高并发.易于管理做了评估.最终使用Maven 管理该项目 . 如下是m ...

  7. React学习笔记---项目构建

    简介 ReactJs由于有FB的支持,得到了社区的极大关注,同时由于ReactJs只希望专一的做好View层次上的工作,所以本身并没有涉及很多周边工具. 今天要介绍一款工具,同时包含一个构建项目模板的 ...

  8. Gulp.js - 简单、直观的自动化项目构建工具

    Gulp.js 是一个简单.直观的构建系统.崇尚代码优于配置,使复杂的任务更好管理.通过结合 NodeJS 的数据流的能力,你能够快速构建.通过简单的 API 接口,只需几步就能搭建起自己的自动化项目 ...

  9. 第一次使用Android Studio时你应该知道的一切配置(三):gradle项目构建

    ​[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...

  10. 项目构建工具Gradle的使用入门(参考,只表明地址)

    Gradle入门介绍:简介 http://blog.jobbole.com/71999/ Gradle入门介绍:第一个Java项目 http://blog.jobbole.com/72558/ Gra ...

随机推荐

  1. PEP8语法规范解释说明

    PEP8规范解析 内容概要: 1.PEP8规范是什么? 2.PEP8相关内容 1.PEP8规范是什么 PEP是Python Enhancement Proposal的缩写,翻译为:"Pyth ...

  2. Vue 双向绑定数据已经更新,但是视图更新:

    使用ElementUI做动态增减表单项的时候,发现数据刷新后视图未更新 Vue包装了数个数组操作函数,使用这些方法操作的数组去,其数据变动时会被vue监测: push() pop() shift() ...

  3. python3的可迭代对象与迭代器对象

    可迭代对象与迭代器对象 通过一段简单的代码来理解这俩个概念 a = [1,2,3,4] for i in a: print(i) 这段代码很简单, 对 a 这个列表进行遍历, 然后打印输出每个元素, ...

  4. Day31面向对象之魔法方法

    Day31面向对象之魔法方法 类的常用魔法方法如下 序号 双下方法 触发条件 1 init 对象添加独有数据的时候自动触发 2 str 对象被执行打印操作的时候自动触发 3 call 对象加括号调用的 ...

  5. 第2-4-8章 规则引擎Drools实战(1)-个人所得税计算器

    目录 9. Drools实战 9.1 个人所得税计算器 9.1.1 名词解释 9.1.2 计算规则 9.1.2.1 新税制主要有哪些变化? 9.1.2.2 资较高人员本次个税较少,可能到年底扣税增加? ...

  6. .NET 6使用ImageSharp给图片添加水印

    ​ .NET 6 中,使用System.Drawing操作图片,生成解决方案或打包的时候,会有警告,意思是System.Drawing仅在 'windows' 上受支持.微软官方的解释是: Syste ...

  7. Scrum敏捷开发方法实践

    前言   作者所在的公司在项目开发的过程中采用着当下互联网公司中流行的小步快跑开发策略,特别借鉴了敏捷开发中的迭代递增思想来指导项目的开发.我们经过对相关敏捷开发方法的调查研究,最终采用了Scrum敏 ...

  8. Windows搭建Git服务器

    Windows如何搭建Git服务器 1.安装java环境 (1)下载安装java 注意(java的版本需要在1.7及以上) (2)配置java的环境变量 (3)检验java环境是否安装成功 2.下载安 ...

  9. SQLMap入门——获取表中的字段名

    查询表名之后,查询表中的字段名 python sqlmap.py -u http://localhost/sqli-labs-master/Less-1/?id=1 -D xssplatform -T ...

  10. VUE项目无法启动NODE版本与NODE-SASS、SASS-LOADER版本不兼容解决方案

    一.错误分析 在VUE项目开发中,我们经常会遇到报错: Node Sass version 7.0.1 is incompatible with ^4.0.0. 网上解决方案也千奇百怪,最终操作下来, ...