weex-style-loader:給你熟悉的style開發體驗
使用
weex
開發了兩個專案,感受到了其跨平臺動態性的強大;另一最直接的感受就是,作為一名前端,不能像平常那樣編寫css
,要不定義內聯style
,要不定義single-class selector
,絞盡腦汁去給每個標籤起className
像這樣
<style>
.mod-app-entry {
...
}
.entry-item {
...
}
.entry-img {
...
}
.entry-txt {
...
}
</style>
<template>
<div class="mod-app-entry">
<a class="entry-item" repeat="{{list}}" href="{{jumpUrl}}">
<image class="entry-img" src="{{imgUrl}}"></image>
<text class="entry-txt">{{title}}</text>
</a>
</div>
</template>
作為前端,這樣子臣妾做不到
筆者更希望能跟熟悉的味道一樣
- 使用
任意選擇器
,元素選擇器、組合選擇器; - 使用
繼承
;
像這樣
<style>
.mod-app-entry {
/*定義全域性樣式*/
color: #999;
font-size: 24;
}
a {
...
}
image {
...
}
.mod-app-entry text {
/*覆蓋color:#999,繼承font-size:24*/
color: #f00;
text-align: center;
}
</style>
<template>
<div class="mod-app-entry">
<a repeat="{{item in list}}" href="{{item.pluginUrl}}">
<image src="{{item.imgUrl}}"></image>
<text>{{item.title}}</text>
</a>
</div>
</template>
味道還是熟悉的好,可是該怎麼做呢?
幸好,weex
提供的weex-loader支援webpack
打包,於是並有了編寫weex-style-loader
的想法
將我們平常編寫的 style 轉換成
single class selecor
style,這樣就可以愉快地開發weex
了
使用
安裝loader
tnpm install @ali/weex-style-loader --save-dev
配合weex-tookit腳手架,在webpack中新增loader
loaders: [
{
test: /.we(?[^?]+)?$/,
loaders: [`weex-loader`, `@ali/weex-style-loader`]
}
]
讓我們看看weex-style-loader
轉換後的程式碼是否符合大爺的需求
<style>
.mod-app-entry {
color: #999;
font-size: 24;
}
.weex-element-increment-1 {
...
}
.weex-element-increment-2 {
...
}
.weex-element-increment-3 {
text-align: center;
color: #f00;
font-size: 24;
}
</style>
<template>
<div class="mod-app-entry">
<a repeat="{{item in list}}" href="{{item.pluginUrl}}" class="weex-element-increment-1">
<image src="{{item.imgUrl}}" class="weex-element-increment-2"></image>
<text class="weex-element-increment-3">{{item.title}}</text>
</a>
</div>
</template>
展望
在此基礎上,類似vue
支援<style lang="less"></style>
,就可以使用less
、sass
前處理器了
敬請期待
相關文章
- 【軟體開發工具——陌生的熟悉人】
- 熟悉一個“高質量”軟體的開發過程
- Vue Vine:帶給你全新的 Vue 書寫體驗!Vue
- Taro 小程式開發大型實戰(一):熟悉的 React,熟悉的 HooksReactHook
- 使用Spring Boot DevTools優化你的開發體驗Spring Bootdev優化
- Android樣式的開發:Style篇Android
- 寫給即將入職的你-軟體工程之需求開發流程軟體工程
- 送給那些開發區域網檔案共享軟體的你們(上)
- 送給那些開發區域網檔案共享軟體的你們(中)
- iPhone XR開始預售!上手體驗,給你老款iPhone升級的5個理由iPhone
- ES6版Promise實現,給你不一樣的體驗Promise
- Electron開發初體驗
- 從零開始帶你上手體驗Sermant自定義外掛開發
- Android開發入門之熟悉開發環境Android開發環境
- Android開發之給你的Button加個背景Android
- WebView你真的熟悉嗎?WebView
- 他在BAT等大廠研發10年,總結了12條開發經驗給你BAT
- 不懂技術的管理者,給你們掃盲軟體開發的基本常識
- KDE Plasma 5:將熟悉的體驗帶到觸控裝置上ASM
- 小程式雲開發體驗
- 小程式開發初體驗
- 給你看看小白博主開發的打賞系統
- Hadoop實驗——熟悉常用的HDFS操作Hadoop
- 帶你熟悉CSS浮動CSS
- Ruby開發人員應該熟悉的10個工具
- 六年不惑:開發人員的“僵難Style”
- Airtest-Selenium升級相容Selenium 4.0,給你全新體驗!AI
- Airtest-Selenium 升級相容 Selenium 4.0,給你全新體驗!AI
- 豐富的開發體驗和激動人心的使用者體驗:XAML
- C#開發之基於NPOI的操作Excel開發體驗C#Excel
- 給開發人員的幾點建議:如何理解你的DBATHBAT
- 小程式雲開發之初體驗
- Nocalhost:雲原生開發新體驗
- 微信小程式開發初體驗微信小程式
- typescript + react 專案開發體驗TypeScriptReact
- 小程式雲開發初體驗
- 如何給軟體開發專案估價?
- 給你一臺人形機器人,你最想開發出怎樣的應用?機器人