linaria

在taro中使用React开发,无法使用之前的styled-components的CSS方案。官方提供了一个linaria的一种CSS样式方案。这种方案与styled-components方案类似。

安装及使用

1.下载安装

  1. yarn add linaria
  1. 配置 babel.config.js
  1. module.exports = {
  2. presets: [
  3. ['taro', {
  4. framework: 'react',
  5. ts: true
  6. }],
  7. 'linaria/babel' // 添加到 babel-presets
  8. ]
  9. }
  1. 配置 config/index.js
  1. const config = {
  2. mini: {
  3. webpackChain(chain, webpack) { // 添加到config-mini
  4. chain.module
  5. .rule('script')
  6. .use('linariaLoader')
  7. .loader('linaria/loader')
  8. .options({
  9. sourceMap: process.env.NODE_ENV !== 'production',
  10. })
  11. }
  12. }
  13. }
  1. 新建文件 linaria.config.js
  1. module.exports = {
  2. ignore: /node_modules[\/\\](?!@tarojs[\/\\]components)/,
  3. }
  1. 使用方式
  1. import React from "react"
  2. import { View } from "@tarojs/components"
  3. import { styled } from "linaria/react"
  4. const Title = styled(View)`
  5. color: #333;
  6. background: red;
  7. `
  8. function Index(){
  9. return (
  10. <Title>
  11. Hello World!
  12. </Title>
  13. )
  14. }