Vue2源码分析-环境搭建

news2025/1/19 14:32:31

安装rollup

项目初始化

npm init -y

安装pnpm

npm i -g pnpm

安装rollup以及相关插件

pnpm i rollup @rollup/plugin-babel @babel/core @babel/preset-env --save-dev

在根目录创建rollup.config.js文件,并且配置如下
在这里插入图片描述

import babel from "@rollup/plugin-babel"

export default{
    input:"./src/main.js",  // 入口
    output:{
        file:"./dist/vue.js",   // 出口
        name:"MVue",  // 添加全局对象
        format:"umd",
        sourcemap:true // 希望可以调试源代码
    },
    plugins:[
        babel({
            exclude:'node_modules/**'   // 排除node_modules模块
        })
    ]
}

在package.json文件下配置命令

"type":"module",
"scripts": {
  "build":"rollup -cw"
},

根目录下创建src/main.js,并且添加如下代码

export const a=10;

根目录下创建.babelrc文件并且添加如下代码

{
    "presets": [
        "@babel/preset-env"
    ]
}

执行打包命令

pnpm run build

成功后我们会看到如下目录

在这里插入图片描述
在dist下创建index.html并添加如下代码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
	// 引入我们的vue
    <script src="./vue.js"></script>
    <script>
        console.log(MVue);
    </script>
</body>
</html>

用游览器打开index.html如果能看到我们在main.js定义的变量a那么恭喜你,基本的搭建就成功了

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/843142.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Vue2 第二十节 vue-router (四)

1.全局前置路由和后置路由 2.独享路由守卫 3.组件内路由守卫 4.路由器的两种工作模式 路由 作用&#xff1a;对路由进行权限控制 分类&#xff1a;全局守卫&#xff0c;独享守卫&#xff0c;组件内守卫 一.全局前置路由和后置路由 ① 前置路由守卫&#xff1a;每次路由…

【Linux操作系统】makefile入门:一个规则-两个函数-三个变量

在Linux中&#xff0c;makefile是一种非常重要的工具&#xff0c;用于自动化构建和管理项目。它可以帮助开发人员轻松地编译和链接程序&#xff0c;同时还可以处理依赖关系和增量构建等问题。在makefile中&#xff0c;我们将重点介绍makefile中的一个规则&#xff0c;两个函数和…

PE半透明屏是怎么制造的?工艺、材料、应用

PE半透明屏是一种新型的屏幕材料&#xff0c;具有半透明的特点。 它由聚乙烯&#xff08;PE&#xff09;材料制成&#xff0c;具有良好的透明度和柔韧性。PE半透明屏广泛应用于建筑、广告、展览等领域&#xff0c;具有很高的市场潜力。 PE半透明屏的特点之一是其半透明性。 它…

关于Java的IO流开发

IO概述 回想之前写过的程序&#xff0c;数据都是在内存中&#xff0c;一旦程序运行结束&#xff0c;这些数据都没有了&#xff0c;等下次再想使用这些数据&#xff0c;可是已经没有了。那怎么办呢&#xff1f;能不能把运算完的数据都保存下来&#xff0c;下次程序启动的时候&a…

区块链技术助力慈善,为您的善举赋予全新力量!

我们怀揣着一颗温暖的心&#xff0c;秉承着公开透明的理念&#xff0c;带着信任与责任&#xff0c;倾力打造了一套区块链技术驱动的去中心化捐赠与物资分发系统&#xff0c;通过智能生态网络&#xff08;IEN&#xff09;解决捐赠不透明问题的系统&#xff0c;让您的善举直接温暖…

Flutter父宽度自适应子控件的宽度

需求&#xff1a; 控件随着金币进行自适应宽度 image.png 步骤&#xff1a; 1、Container不设置宽度&#xff0c;需要设置约束padding&#xff1b; 2、文本使用Flexible形式&#xff1b; Container(height: 24.dp,padding: EdgeInsetsDirectional.only(start: 8.dp, end: 5.d…

vue- 创建wms-web项目

vue 发展历程 安装vite 第一步 创建wms-web项目 第二步 打开文件夹并安装所有开发环境的依赖 都可以放静态资源 public>vite.svg 不会重新编译成其他名字 assets>vue.svg 会重新编译成一个随机的名称 重新编译 启动 第三步 spa 单页渲染 第四步 安装路由 第五步 …

再次斩获第一,文心3.5霸榜国内大模型

目录 1 什么是文心一言&#xff1f;2 体验与文心一言对话3 文心3.5霸榜国内大模型 1 什么是文心一言&#xff1f; 文心一言是百度全新一代知识增强大语言模型&#xff0c;文心大模型家族的新成员&#xff0c;能够与人对话互动&#xff0c;回答问题&#xff0c;协助创作&#xf…

FPGA_时钟显示(时钟可调)

1. 实验说明 在数码管显示数据的基础上&#xff0c;让六位数码管显示数字时钟&#xff0c;并且通过按键可以对时间进行修改。 实验目标&#xff1a;六位数码管分别显示时间的时分秒&#xff0c;且通过按键可实现加减调整时间及清零功能。 key1: 切换键&#xff1a;选择待…

Vue [Day4]

组件的三大组成部分 组件的样式冲突 scoped <style scoped></style>data 是一个函数 components/BaseButton.vue <template><div class"BaseButton"><button click"count--">-</button><span>{{ count }}</…

单调队列-求一定范围内的最大值和最小值

一、链接 154. 滑动窗口 二、题目 给定一个大小为 n≤106n≤106 的数组。 有一个大小为 kk 的滑动窗口&#xff0c;它从数组的最左边移动到最右边。 你只能在窗口中看到 kk 个数字。 每次滑动窗口向右移动一个位置。 以下是一个例子&#xff1a; 该数组为 [1 3 -1 -3 5…

第九节 文件操作

文章目录 1. 引言2. 基本的文件操作2.1 打开文件2.1.1 mode 访问模式2.1.2 文件不存在,则创建文件2.1.3 二进制打开文件2.1.4 打开文件时&#xff0c;指定编码方式 2.2 关闭文件2.2.1 with 打开语句结构 2.3 文件的读写2.3.1 写入文件内容2.3.2 读取文件2.3.2.1 read&#xff0…

计算机网络-性能指标

计算机网络-性能指标 文章目录 计算机网络-性能指标简介速率比特速率 带宽吞吐量时延时延计算 时延带宽积往返时间网络利用率丢包率总结 简介 性能指标可以从不同的方面来度量计算机网络的性能 常用的计算机网络的性能指标有以下8个 速率带宽吞吐量时延时延带宽积往返时间利…

前端例程20230806:彩色灯珠装饰

演示 这里页面四周的彩色灯珠是会随着页面调整自动调整位置的。 代码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta na…

6.4.tensorRT高级(1)-UNet分割模型导出、编译到推理(无封装)

目录 前言1. Unet导出2. Unet推理总结 前言 杜老师推出的 tensorRT从零起步高性能部署 课程&#xff0c;之前有看过一遍&#xff0c;但是没有做笔记&#xff0c;很多东西也忘了。这次重新撸一遍&#xff0c;顺便记记笔记。 本次课程学习 tensorRT 高级-Unet分割模型导出、编译到…

【数据结构】Disruptor环形数组无锁并发框架阅读

Disruptor 是苹国外厂本易公司LMAX开发的一个高件能列&#xff0c;研发的初夷是解决内存队列的延识问顾在性能测试中发现竟然与10操作处于同样的数量级)&#xff0c;基于Disruptor开发的系统单线程能支撑每秒600万订单&#xff0c;2010年在QCn演讲后&#xff0c;获得了业界关注…

C++ 的 string 是用什么编码方式储存字符串的

代码 创建一个文件&#xff0c;用二进制的方式将字符串写入文件中 FileStream fs("test.txt", FileMode::Create);string str("测试文本");fs.Write((uint8_t *)str.c_str(), 0, str.length());return 0;其中 FileStream 是我对 fstream 的封装。 打开文…

p7付费课程笔记6:CMS GC

目录 前言 工作步骤 缺点 问题 前言 上一章节我们讲了串/并行GC&#xff0c;这一章节说下CMS GC。看前思考一个问题&#xff0c;并行GC与CMS GC的区别在哪里。 什么是CMS收集器 CMS(Concurrent Mark-Sweep)是以牺牲吞吐量为代价来获得最短回收停顿时间的垃圾回收器。对于…

2023年8月实时获取地图边界数据方法,省市区县街道多级联动【附实时geoJson数据下载】

首先&#xff0c;来看下效果图 在线体验地址&#xff1a;https://geojson.hxkj.vip&#xff0c;并提供实时geoJson数据文件下载 可下载的数据包含省级geojson行政边界数据、市级geojson行政边界数据、区/县级geojson行政边界数据、省市区县街道行政编码四级联动数据&#xff0…

PHP8条件控制语句-PHP8知识详解

我们昨天说了流程控制的结构有顺序结构、选择结构和循环结构。选择结构就是条件结构。 条件控制语句就是对语句中不同条件的值进行判断&#xff0c;进而根据不同的条件执行不同的语句。 在本文中&#xff0c;学习的是if语句、if…else语句、if…elseif语句和switch语句。 1、…