qian奇岸微信二维码 如您需要快速报价 请加技术经理微信 服务热线
13501992972
"MENU"
首页 > 开发知识 > 正文

webpack配备提升babel

奇岸开发
ahqian.com
09/29/2022
wechat

无需加好友免费技术支持

建立工程项目目录ajax挑选仿真模拟外挂ajax提升回到数据信息跨域问题webpack配备提升babel-polyfill提升途径别称修改单页应用根模板index.html部位修改chunk文件名优化了各种类型文件夹名称css-loaderNEXT——在进行一切表述以前,大家建立了一个新的项目。提议立即使用vue官方网所提供的命令行工具vue-cli,它能够在前提下迅速形成vue和webpack单页应用。

# 全局性安装vue-cli

npm install vue-cli -g

# 挑选项目根文件夹

# e:

# cd vue-project

# 建立webpack项目

# vue init [vue-cli模板名字] [项目文件夹]

vue init webpack my-project

# 安装依靠

npm install

1

2

3

4

5

6

7

8

9

10

11

12

13

安装过程中出现全自动提醒,规定键入项目名字、叙述、创作者、重要是不是使用eslint、是不是添加单元测试卷。必要时,能够根据要求立即键入或者选择。要是没有要求,一路按回车键和Y。

成功之上流程后,就能了e:vue-projectmy-project寻找一键生成的项目。随后大家可以按照实际必须或撰写习惯性建立实际目录。以下属于参照目录:

|- src/

| |- assets/ // 静态文件目录:css、images等

| |- components/ // 部件文档目录

| |- page/ // 实际业务流程网页页面目录

| |- router/ // vue-router的路由器目录

| |- store/ // vuex目录

| |- util/ // 实体类目录

|- main.js // webpack通道文档

|- App.vue // 通道网页页面

1

2

3

4

5

6

7

8

9

在jQuery时期,ajax一般立即使用jQuery自身给予。可是当使用vue做为底层开发架构,非常少直接操作DOM之间的关系,jQuery非常少谈及。所以在这里建议大家使用axios做为ajax那也是外挂vue平台推荐的外挂。axios安装与使用都比较简单,但项目具体的配备将在今后的章节目录所涉及到的,这里不详尽探讨了。如今我们只需知道能够实现ajax就行了。

在具体研发流程中,前面必须后面数据信息,但后面没完成作用。有许多解决方法能够摆脱困境,例如创建前端和后端公共事业Mock Server。可是,假如项目早期并没有准备工作,针对前面学生们,应用Mockjs完成这一要求更为省时省力,与项目自身集成化,不用架设服务器。

注:集成化当地项目Mockjs,仅有前期开发设计或工作忙碌时中后期应统一API测试平台,保证前后端根据平台测试自身功能的API统一管理协议。

如在研发流程中,ajax因为电脑浏览器自身的安全机制,要求详细地址不立足于同样的服务器和端口号,造成跨域问题。摆脱困境的最好方式就是让环境学生们配备它CORS,或是在webpack中设定proxyTable,或自己修建nginx反向代理服务。

在这里具体说一下webpack中proxyTable设定(实际上是vue-cli产生的项目内置配置项)。一定要注意,webpack的proxyTable只能在开发工具中合理!下列表明均引入自身vue-cli对webpack模板表明,以下属于初始连接:vuejs-templates

在config/index.js中编写dev.proxyTable设置代理标准。在开发工具中,实际应用http-proxy-middleware外挂达到的代理商作用,而且它的详尽使用方法你就应该参照其官方文档,这里有一个典型的例子:

// config/index.js

module.exports = {

// ...

dev: {

proxyTable: {

// 全部以/api 代理商作为前缀请求

// 即 /api/getNav ->

"/api": {

target: "",

changeOrigin: true,

pathRewrite: {

"^/api": ""

}

}

}

}

}

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

vue-cli尽管默认设置产生的项目十分详细,但还是有一些必须修改,以能够更好地融入具体开发设计。这儿只列出项目整体的修改,在具体设计中很有可能会有更多修改,如提升loader等

提升babel-polyfill

vue-cli默认设置产生的项目内置

babel-plugin-transform-runtime,它保证了浏览器兼容模式。但是几个问题:

异步加载部件时,也会产生 polyfill 代码冗余不兼容全局函数和实例方法 polyfill 我们应该提升以上2个缺点babel-polyfill,与此同时删掉babel-plugin-transform-runtime键入下列指令

# 安装babel-polyfill

npm install babel-polyfill --save

# 卸载掉babel-plugin-transform-runtime

npm uninstall babel-plugin-transform-runtime --save

1

2

3

4

5

修改文档.babelrc

"plugins": [

// "transform-runtime"

],

1

2

3

在通道文档main.js中引入babel-polyfill

import "babel-polyfill"

1

加上途径别称

在具体设计中,一些途径等级可能挺深,如果采用绝对路径可能有不计其数的/。为了解决这类问题,我们能提升途径别称,从而减少研发流程中途径的多元性。

修改文档:webpack.base.conf.js

resolve: {

extensions: [".js", ".vue", ".json"],

alias: {

"vue$": "vue/dist/vue.esm.js",

"@": resolve("src"),

"util": "@/util",

"asset": "@/asset"

...

}

}

1

2

3

4

5

6

7

8

9

10

修改单页应用根模板index.html部位

webpack默认设置根模板途径与src可是我更喜欢把根模板放到同一等级。src目录。当你也是有像我这样的要求,那样按以下修改就行了

// 开发工具:webpack.dev.conf.js

new HtmlWebpackPlugin({

filename: "index.html",

// template: "index.html",

template: "",

inject: true

})

// 工作环境`webpack.prod.conf.js`

new HtmlWebpackPlugin({

filename: config.build.index,

// template: "index.html",

template: "",

...

}),

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

修改chunk文件名

如果你不想见到以数据开头各种各样文件夹名称,能够下列方法修改。如果你觉得hash长短太长还可以限定

// webpack.prod.conf.js

output: {

path: config.build.assetsRoot,

filename: utils.assetsPath("js/[name].[chunkhash].js"),

// chunkFilename: utils.assetsPath("js/[id].[chunkhash].js")

chunkFilename: utils.assetsPath("js/[name].[chunkhash:7].js")

}

1

2

3

4

5

6

7

健全多种类型css-loader

在build/utils.js 大家可以看到,vue-cli项目全自动帮我们分辨必须什么css的loader。如果你想要不久的将来不会再随便挪动package.json如果你可以将这些彻底放在一边loader都安装上。在其中安装sass-loader前要提前安装node-sass。安装less-loader之前需要安装less。以下是安装sass-loader和less-loader

npm install node-sass sass-loader less less-loader --save-dev

1

项目建立和配备后,我们将要逐渐撰写环境智能管理系统中最重要和最基本一部分——路由器以及管理权限。根据权限网页跳转无疑是重中之重。

现阶段源代码详细地址:

一定要注意,源代码会不断创新(由于工作太忙,无法保证及时更新)

热度463

了解更多webpack配备提升babel欢迎联系奇岸开发客服。

奇岸开发可定制企业官网小程序、小程序商城、餐饮外卖小程序、预约小程序、多门店小程序、分销小程序及个人小程序。

微信二维码

微信长按识别或扫一扫,无需加好友直接咨询,企业网站开发、网站托管维护、企业管理系统开发、微信小程序制作、域名主机、网站备案、网站改版等提供专业技术解答。

精彩推荐

猜你喜欢