标签:scss style vant babel 插件 ui 引入 import resources
vant-ui的按需加载 babel-plugin-import 实现按需加载 “ babel-plugin-import 是一款 babel 插件,它会在编译过程中将 import 的写法自动转换为按需引入的方式// 插件安装 yarn add babel-plugin-import -D 复制代码 // 在babel.config.js 中配置 module.exports = {pre…
vant-ui的按需加载
babel-plugin-import 实现按需加载
“babel-plugin-import 是一款 babel 插件,它会在编译过程中将 import 的写法自动转换为按需引入的方式
1 2 3 |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
|
使用vant组件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
|
移动端之rem的适配方式
postcss-pxtorem
“postcss-pxtorem 是一款 postcss 插件,用于将单位转化为 rem
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
|
1 2 3 4 5 6 7 8 9 |
|
2020还自己手写css在个大浏览器的兼容版本难免有些low,这里的autoprefixer
正好可以帮我们增加兼容版本。
rootValue
根据UI图的大小进行设置,像vant
、mint-ui
这样的第三方UI框架是375
,但是我们开发是一般使用的是750
的尺寸,如果rootValue
设置成75
,会发现vant
组件会偏小。所以设置成37.5
,如果我们拿到了750
的图那么实际尺寸需要 *2
。其实我们如果使用蓝湖,可以直接设置一下@2。
amfe-flexible
“amfe-flexible用于设置 rem 基准值,,你可能听过lib-flexible,打开官网发现已经废弃了,推荐使用的是
amfe-flexible
。
1 2 3 4 5 6 7 8 9 |
|
效果
“注:
postcss-pxtorem
目前只支持外部样式表,也就是说内联样式不会被转成 rem
正常情况下我们可以发现webpack已经将 px转换成了相应的rem。
定义全局的统一sass变量
全局变量
“定义好全局的变量方便统一规范
css
颜色,比如说:我们定义一个变量$bg
为红色,后期想改变这个颜色就可以直接更改全局变量
目录结构
1 2 3 4 5 6 |
|
_variables.scss
1 2 3 4 5 6 7 8 9 10 11 12 13 |
|
variables.scss.d.ts
1 2 3 4 5 6 7 8 |
|
引入全局变量
“直接在主入口文件
main.ts
里面引用是不生效的,这里需要使用style-resources-loader来帮助我们引入。
-
style-resources-loader是什么呢?
“style样式资源处理器,在style资源中注入内容,导入css / sass / scss / less / stylus这些内容。
-
style-resources-loader有什么作用呢?
“将预编译样式的变量、函数、mixin注入到全局,避免在每个样式文件中手动的@import导入
-
如何使用style-resources-loader?
style-resources-loader
是webpack
的插件,所以需要我们自定义配置,vue-cli 3.0+隐藏了默认配置,并允许我们通过vue.config.js
来修改配置。1
2
3
4
5
6
7
8
9
10
11
12
13
module.exports = {
devServer: {}, // 端口号,构建完毕是否直接打开,反向代理等
pluginOptions: { // 这里使用style-resources-loader引入全局变量
"style-resources-loader": {
preProcessor: "scss",
patterns: [
path.resolve(__dirname, "src/styles/_variables.scss")
]
}
},
chainWebpack(config){} // webpack的高级配置
}
标签:scss,style,vant,babel,插件,ui,引入,import,resources 来源: https://blog.csdn.net/LiuBo_1999/article/details/117533436
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。