路過的朋友,能夠點個贊,關注一下~~~
javascript
cube-ui
是基於 Vue.js 實現的精緻移動端組件庫。cube-ui
自帶移動端的適配,經過postcss-px2rem
插件進行配置css
若是使用的版本 Vue CLI vue-cli@3.X
,那麼推薦你直接使用 vue-cli-plugin-cube-ui
插件。在你初始化完項目後直接執行 vue add cube-ui
便可。vue
vue add cube-uijava
Use post-compile?
是否使用後編譯(推薦選擇是)後編譯只不去使用編譯後的代碼,直接引用源碼,用應用去編譯這塊代碼。 後編譯的優勢是減小構建包的體積。webpack
partly, import component on demand......
按需引用組件(推薦)git
fully, import all the compoents
所有引用github
Custom theme?
自定義主題(推薦)web
Use rem layout
是否使用rem佈局vue-cli
Use vw layout
是否使用vm佈局npm
src/cube-ui.js // 引入全部的組件,根據本身的須要手動刪除不須要的組件
src/theme.styl // 列出全部組件的顏色,根據需求把顏色進行修改
vue.config.js // 額外的配置,能夠給webpack作額外的配置。
// 對應cube-ui而言, 對css進行額外的配置,以及添加postCompile插件
.browserslistrc // 針對移動端進行配置修改
package-lock.json
package.json // 添加了"transformModules"字段
// 配置此項內容,把cube-ui的組件當作項目的組件直接引用,而後交於項目去編譯,這就是所謂的後編譯,打包後項目體積會大大減小
"transformModules": {
"cube-ui": {
"transform": "cube-ui/src/modules/${member}",
"kebabCase": true
}
}
src/main.js // 引入cube-ui
複製代碼
在 cube-ui
中,自行安裝了postcss-plugin-px2rem
插件,不須要再進行安裝,只需進行配置,若沒有安裝,則需自定義安裝
安裝
npm i --save postcss-plugin-px2rem
能夠在package.json
中配置
var px2rem = require('postcss-px2rem');
module.exports = {
module: {
loaders: [
{
test: /\.css$/,
loader: "style-loader!css-loader!postcss-loader"
}
]
},
postcss: function() {
return [px2rem({remUnit: 75})];
}
}
複製代碼
配置在postcss.config.js
官方建議postcss
單獨配置在文件postcss.config.js
中,在根目錄下面建立文件,並進行配置。更多配置參考npm文檔
module.exports = {
plugins: [
// 兼容瀏覽器版本
require('autoprefixer')({ browsers: 'last 2 versions' }),
// px轉rem
require('postcss-px2rem')({ remUnit: 75 })
]
}
複製代碼
rem
是根據根結點來計算各個子節點的值,因此根結點也要作響應式變化。自定義一個utils/setRem.js
文件
export default function setRem(baseWidth = 750) {
const dpr = window.devicePixelRatio;
const currentWidth = document.documentElement.clientWidth;
let remSize = 0;
let scale = 0;
scale = currentWidth / baseWidth;
remSize = baseWidth / 10;
remSize = remSize * scale;
document.documentElement.style.fontSize = remSize + 'px';
document.documentElement.setAttribute('data-dpr', `${dpr}`);
}
複製代碼
引入 在入口函數main.js
中引入使用便可,
// 引入
import setRem from './utils/setRem'
// 使用,默認是750,也能夠諮詢指定
setRem()
複製代碼
參考文檔