首页 > 编程语言 >Vue-前端化工程入门,第一个vue-cli程序

Vue-前端化工程入门,第一个vue-cli程序

时间:2023-09-23 21:00:13浏览次数:43  
标签:npm vue cli js webpack Vue 打包

第一个vue-cli程序的准备工作

 什么是vue-cli?

vue-cli是官方提供的一个脚手架工具,用于快速生成一个vue项目模板。

预先定义好的目录结构和代码,就好比咱们在创建maven项目时可以选择创建一个骨架项目,这个骨架项目就是脚手架,有利于我们更加快速的开发。

环境准备(所涉及到的命令都在命令控制板中输入):

第一步:下载Node.js

官网下载根据自己的电脑配置需求,无脑下一步就好了;

官网地址:

Node.js下载好了可以在命令控制板中验证一下

node -v检测node.js的版本

npm -v检测npm的版本

第二步:安装node.js淘宝镜像

// -g就是全局安装
npm install cnpm -g //或者直接改源安装,在国内比较快(推荐)
npm install --registry=https://registry.npm.taobao.org

 使用国内大厂的镜像稳定且高速

安装了之后可以去文件目录看看有没:cnpm文件夹

查看前需要打开隐藏文件,因为它在隐藏文件内

文件目录:C:\Users\86173\AppData\Roaming\npm

如果此目录下有文件,说明安装成功了

第三步:安装vue-cli

//安装vue-cli
cnpm install vue-cli -g

 

安装完成以后可以看看我们能使用那些模板

//查看vue可使用模板
vue list

 

一般使用webpack

第四步:初始化一个vue项目

在我们创建项目的文件目录下,启动命令提示符(推荐以管理员身份运行),创建第一个vue-cli文件myvue

//初始化一个vue-cli文件
vue init webpack myvue

 

 第一个初始化项目可以如上选择

第五步:安装vue项目运行环境

首先,进入新建立的文件目录

//进入你所创建的vue-cli目录
cd myvue

 

直接安装环境

//第一种
npm install  
//第二种
cnpm install

 

第六步:运行初始项目

当环境安装好了以后,可跑初始化的项目了

//打包项目并运行
npm run dev

 

初始化地址应该是:http://localhost:8080

如果弹出Vue的欢迎页面则成功

Webpack学习

什么时webpack?

本质上,webpack是一个现代的Javascript应用程序的静态模块打包工具。

当webpack打包时候,会递归的构建一个依赖关系图,其中包含程序所需的每一个模块。

安装webpack

//安装webpack
npm install webpack -g

//下面一个也需要安装
npm  install webpack-cli -g

 

安装完成后可以使用命令查看版本:

webpack -v

webpack-cli  -v

使用webpage打包需要填写关键的文件(webpack.config.js)

  • entry:入口文件,指定webpack用那个文件作为项目入口
  • output:输出,指定webpack把处理完的文件放到指定位置
  • module:模块,用于处理各种类型的文件
  • plugins:插件,如热更新,代码重用
  • resolve:设置路径指向
  • watch:监听,用于设置文件改动后直接打包

webpack的使用:

第一步:简单的创建一个项目文件

第二步:创建一个名为modules的目录,用于放置js等文件

第三步:在modues下创建文件模块,如hello.js,用于编写js等相关代码

代码展示:

//暴露一个方法
'use strict';
exports.sayHello = function (){
    document.write("<h1>hello,webpack</h1>");
}

 

exports:导出方法,被此关键字修饰的函数可以被其它类引用,且内部的变量仅限于函数内使用,类似于Java的public修饰符

第四步:在modules目录下新建一个main.js的入口函数,用于打包时设置entry属性

代码展示:

'use strict';
//require 导入一个模块,可以使用这个关键字导入后就可使用被导入模板的方法
var hello = require("./hello");
hello.sayHello();

 

require:用于导入其它的js文件,并且把它赋值给一个变量,此变量可以调用此js文件中的任意方法

第五步:在项目目录下创建,webpage.config.js配置文件

代码展示:

module.exports = {
    entry: "./modules/main.js",
    output:{
        filename:"./js/bundle.js"
    }
}

 

第六步:使用webpage命令打包

在Idea的Terminal中输入打包命令:

//打包命令
webpack

 

webpack会根据脚本自动按要求打包,其中就包括ES6标准转ES5标准等等

注意:如果Idea的Terminal权限不够,则执行以下命令

//先查看当前权限,如果为Restricted,则是禁止,
get-ExecutionPolicy
//如果时是禁止,则开启
set-ExecutionPolicy RemoteSigned
//再次获取,如果为RemoteSigned,则是允许,便可以打包了

 

补充命令:

webpack --watch

 

运行此命令后,会一直检测源码有无变化,如果变化了会重新自动打包,一般不推荐用,非常耗性能

 

标签:npm,vue,cli,js,webpack,Vue,打包
From: https://www.cnblogs.com/5ran2yl/p/17724772.html

相关文章

  • Clion中使用QtCharts导致进程直接退出
    解决办法:除了需要Qt6Charts.dll外,还需要引入QtOpenGL.dll、QtOpenGLWidgets.dll。最近在看H264编码相关的实现,一头雾水。顺便写了个二进制读取文件的小工具,方便分析码流。地址:BinaryView:使用二进制查看文件,(gitee.com)贴一下CMakeList:find_package(Qt6COMPONENTS......
  • Springboot+Vue(二)
    上传的静态资源文件放到static文件夹下即可表单的enctype属性规定再发送到服务器之前该如何对表单数据进行编码默认情况下数据格式为key=value&key=value需要改成enctype="multipart/form-data"默认情况下限制了单次请求文件的大小单个文件不能超过1Mb所有文件不能超过......
  • Vue-插槽及自定义事件分发
    一.插槽slot在某些场景中,我们可能想要为子组件传递一些模板片段,让子组件在它们的组件中渲染这些片段。<slot> 元素是一个插槽出口 (slotoutlet),标示了父元素提供的插槽内容 (slotcontent)将在哪里被渲染。 插槽就好比一个占位符,它不是解决页面必须元素的位置,而是解决未......
  • vue中created和mounted区别
    在Vue.js中,created和mounted都是生命周期钩子函数,用于在组件不同的生命周期阶段执行代码。它们的主要区别如下:1.created钩子函数:2.created在组件实例被创建后立即调用。此时组件的实例已经被创建,并且组件的数据观测(dataobservation)和事件机制已经初始化完成。3.created......
  • ts和vue3的结合常见的一些问题(持续更新)
    特此注意是vue3,而不是vue2使用typescript的interface关键词定义一个存数据的数据类型interfacePosition{long:number,lnt:number,height:number}constposition=ref<Position>({long:0,lnt:0,height:0})......
  • 09-集成ElasticClient客户端
    创建Config包在包当中新建一个:ElasticSearchConfig.java,内容如下,主要的大致内容就是配置ES服务器的连接超时时长与请求相关的时长配置还有就是配置了ES服务器的地址:/***@authorBNTang*@versionV1.0*@projectSpringBoot-ElasticSearch-Pro*@dateCreatedin......
  • vue2 访问网关的时候post无法请求
    问题复现:后台使用微服务的框架在consul配置并使用网关进行代理。 问题描述:前台访问网关调用后台方法 请求方式为get时正常使用~post时显示跨域问题 post访问路径正常但就是无效果显示跨域问题报错解决方法:module.exports=defineConfig({......
  • vue3的面试题
    1.什么是Vue3?Vue3有哪些新增特性?答:Vue3是Vue.js框架的最新版本,它增加了很多新特性,包括CompositionAPI、Teleport、Suspense和Fragment等。2.Vue3CompositionAPI是什么?它的作用是什么?答:Vue3CompositionAPI是Vue3中的一个新特性,它的作用是将组件中的逻辑分解成可复用的可......
  • 全面分析 Vue 的 computed 和 watch 的区别
    全面分析Vue的computed和watch的区别 一、computed介绍computed用来监控自己定义的变量,该变量在data内没有声明,直接在computed里面定义,页面上可直接使用。//基础使用{{msg}}<inputv-model="name"/>//计算属性computed:{msg:function(){retur......
  • ClickHouse的数据持久化与恢复机制
    简介ClickHouse是一个高性能的列式数据库,它的数据持久化和恢复机制是其重要的特性之一。本文将深入探讨ClickHouse的数据持久化与恢复机制。数据持久化ClickHouse的数据持久化是通过将数据写入磁盘来实现的。ClickHouse使用了一种称为MergeTree的存储引擎,它将数据按照时间戳分成......