原文链接: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. git回滚操作系列

    git回滚操作系列 准备工作 本地环境 线上环境 分支 master 场景1 线上环境回滚,同步线上与本地操作 线上环境当前与本地一致 先把线上回滚至早期 获取提交日志 [root@root]# gi ...

  2. 如何安装Visual Studio Community2022

    如何安装Visual Studio Community2022 Visual Studio是一款强大的IDE(集成开发环境),对于初学者可以选择使用社区版,下面是Visual Studio Commu ...

  3. 关于python转义字符在正则匹配中的问题研究

    问题 首先看一个问题: import re text = r"\学" print(text) zz = r"\学" result = re.findall(zz ...

  4. python-面向过程与函数式

    面向过程与函数式 面向过程 "面向过程"核心是"过程"二字,"过程"指的是解决问题的步骤,即先干什么再干什么......,基于面向过程开发程 ...

  5. Android ViewPager2 + Fragment + BottomNavigationView 联动

    Android ViewPager2 + Fragment + BottomNavigationView 联动 本篇主要介绍一下 ViewPager2 + Fragment + BottomNavig ...

  6. C++编程笔记(智能指针学习)

    目录 scoped_ptr unique_ptr shared_ptr 智能指针简单应用 智能指针简单应用 scoped_ptr 拷贝构造和 =赋值操作均为私有,不允许 内部重载了解引用(*)操作符和 ...

  7. 复杂mysql/多表查询

    目录 多表查询的两种方法 sql语句基础语法补充 concat / existe / 表字段 增加 修改 删除 复杂sql练习题 多表查询的两种方法 方式1:连表操作 inner join 内连接 s ...

  8. Java单例模式的最佳实践?

    "读过书,--我便考你一考.茴香豆的茴字,怎样写的?"--鲁迅<孔乙己> 0x00 大纲 目录 0x00 大纲 0x01 前言 0x02 单例的正确性 new关键字 c ...

  9. 如何基于 Redis 实现分布式锁

    什么是分布式锁 分布式锁:不同进程必须以互斥方式使用共享资源的一种锁方法实现. 实现分布式锁的基础 互斥.任何时刻,只有一个客户端持有锁. 无死锁.最终总是有可能获得锁,即使持有锁的客户端已经崩溃. ...

  10. [OpenCV实战]25 使用OpenCV进行泊松克隆

    目录 1 Seamless Cloning实现 1.1 Seamless Cloning实例 1.2 正常克隆(NORMAL_CLONE)与混合克隆(MIXED_CLONE) 1.2.1 Normal ...