iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >在 React Native 中使用 CSS Modules的配置方法
  • 455
分享到

在 React Native 中使用 CSS Modules的配置方法

React Native使用 CSS ModulesReact  CSS Modules 2022-11-13 13:11:46 455人浏览 安东尼
摘要

目录安装依赖和配置使用示例有些前端工程师希望也能像开发 WEB 应用那样,使用 CSS Modules 来开发 React Native。本文将介绍如何在 React Native

有些前端工程师希望也能像开发 WEB 应用那样,使用 CSS Modules 来开发 React Native。本文将介绍如何在 React Native 中使用 CSS Modules。

安装依赖和配置

首先安装 react-native-sass-transfORMer 使得我们可以在 React Native 应用中使用 sass 样式。

yarn add react-native-sass-transformer sass -D

参考如下配置,修改 metro.config.js 文件

const { getDefaultConfig } = require("metro-config")
module.exports = (async () => {
  const {
    resolver: { sourceExts },
  } = await getDefaultConfig()
  return {
    transformer: {
      babelTransformerPath: require.resolve("react-native-sass-transformer"),
    },
    resolver: {
      sourceExts: [...sourceExts, "scss", "sass"],
    },
  }
})()

我们还需要安装另外两个依赖

yarn add babel-plugin-react-native-classname-to-style \
  babel-plugin-react-native-platform-specific-extensions -D

修改 babel.config.js 文件,配置刚刚安装的两个插件

module.exports = {
  presets: ["module:metro-react-native-babel-preset"],
  plugins: [
    "react-native-classname-to-style",
    [
      "react-native-platform-specific-extensions",
      {
        extensions: ["scss", "sass"],
      },
    ],
  ],
}

因为我们的项目使用了 typescript,为了避免类型警告,在项目中添加一个 global.d.ts 文件,内容如下

declare module "*.scss"

使用

React Native CSS Modules 支持 @mixin @include @extend 等操作

@mixin lightFontStyle($fontColor: rgb(0, 0, 0)) {
  font-size: 22px;
  font-family: $sencodary-font-light;
  letter-spacing: 0.96px;
  color: $fontColor;
}

.input {
  @include lightFontStyle($fontColor: rgb(39, 39, 39));
  padding: 12px 20px 40px;
  flex: 1;
}

.disabled {
  @extend .input;
  color: rgb(99, 99, 99);
}

CSS Modules 也可以很好的和 StyleSheet 一起工作

// App.scss
@import "./theme/font.scss";

.welcome {
  font-family: $primary-font;
  font-size: 17px;
  text-align: center;
}
//App.tsx
import React from "react"
import { Text, StyleSheet } from "react-native"
import scss from "./App.scss"

function Welcome(props: Props) {
  return <Text style={[scss.welcome, styles.text]}>Hello {props.name}!</Text>
}

const styles = StyleSheet.create({
  text: {
    backgroundColor: "transparent",
    margin: 8,
  },
})

示例

这里有 一个示例 ,供你参考。

到此这篇关于如何在 React Native 中使用 CSS Modules的文章就介绍到这了,更多相关React Native使用 CSS Modules内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: 在 React Native 中使用 CSS Modules的配置方法

本文链接: https://www.lsjlt.com/news/171363.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 在 React Native 中使用 CSS Modules的配置方法
    目录安装依赖和配置使用示例有些前端工程师希望也能像开发 web 应用那样,使用 CSS Modules 来开发 React Native。本文将介绍如何在 React Native ...
    99+
    2022-11-13
    React Native使用 CSS Modules React  CSS Modules
  • React Native项目中使用Lottie动画的方法
    Lottie是Airbnb开源的一个面向iOS、Android、React Native的动画库,能加载Adobe After Effects导出的动画,并且能让原生App像使用静态...
    99+
    2024-04-02
  • 在spring boot3中使用native image的最新方法
    目录简介安装GraalVM添加Native Image支持构建spring boot3应用总结简介 在之前spring boot3文章中我们介绍了,spring boot3的一个重要...
    99+
    2023-01-31
    spring boot3使用native image spring boot3 native image
  • 在netty中使用native传输协议的方法
    目录简介native传输协议的依赖netty本地传输协议的使用总结简介 对于IO来说,除了传统的block IO,使用最多的就是NIO了,通常我们在netty程序中最常用到的就是NI...
    99+
    2024-04-02
  • 关于React Native使用axios进行网络请求的方法
    在前端开发中,能够完成数据请求的方式有很多,如Ajax、jQuery ajax、axios和fetch等。不过,随着技术的发展,现在能够看到的基本上也就axios和fetch两种。 ...
    99+
    2024-04-02
  • 在react中如何使用mockjs方法
    本篇内容主要讲解“在react中如何使用mockjs方法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“在react中如何使用mockjs方法”吧!介绍mock意为“模仿”或"模拟&qu...
    99+
    2023-06-29
  • React中配置子路由的实现方法
    这篇文章将为大家详细讲解有关React中配置子路由的实现方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1、组件First.js下有子组件:import Admin from&nbs...
    99+
    2023-06-15
  • React中使用Mobx的方法
    目录一、Mobx前端状态管理框架 基础概念?1. 什么是Mobx2. 什么是状态管理?3. 为什么需要状态管理?状态管理的一般思想(Flux)二、mobx的用法1. 安装 mobx2...
    99+
    2023-02-03
    React使用Mobx React使用Mobx
  • 在react中使用mockjs的方法你知道吗
    目录介绍安装&卸载&引入基础语法&规范 7种生成规则生成规则和属性值value的关系占位符@模拟接口总结介绍 mock意为“模仿&rdq...
    99+
    2024-04-02
  • VScode中配置使用fortran的方法
    目录一. 编译器的下载1.编译器的选择2. MinGW w64文件下载3.环境变量的配置二. VScode调试相关插件1. 安装VScode2.命令行窗口编辑3.安装插件三.编译运行...
    99+
    2024-04-02
  • react配置px转换rem的方法
    安装相关的依赖 npm i lib-flexible --save npm i postcss-px2rem --save 主要用来暴露项目配置 npm run eject !...
    99+
    2024-04-02
  • react项目优化配置的方法
    本篇内容介绍了“react项目优化配置的方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!优化-配置CDN通过 craco 来修改 webp...
    99+
    2023-07-02
  • 在 React 项目中全量使用 Hooks的方法
    目录前言React HooksuseStateuseReducer基础用法进阶用法useContextuseEffectuseLayoutEffectuseRefuseImperat...
    99+
    2022-11-13
    React使用 Hooks  React 项目使用 Hooks
  • DataURIscheme及其在CSS中的使用方法
    本篇文章为大家展示了DataURIscheme及其在CSS中的使用方法,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。网页优化的一大首要任务是减少HTTP 请求 (h...
    99+
    2024-04-02
  • React-Native中一些常用组件的用法详解(一)
    前言本文为大家介绍一下React-Native中一些常用的组件,由于对ES6的语法并没有完全掌握,这里暂时用ES5和ES6混用的语法。View组件View是一个支持Flexbox布局、样式、一些触摸处理、和一些无障碍功能的容器,并且它可以放...
    99+
    2023-05-31
    react-native 常用组件 用法
  • React中的css如何使用
    这篇文章主要介绍了React中的css如何使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇React中的css如何使用文章都会有所收获,下面我们一起来看看吧。一、行内样式使用import React...
    99+
    2023-06-27
  • React项目配置prettier和eslint的方法
    目录配置prettier和eslint配置stylelint保存自动修复参考视频: https://www.bilibili.com/video/BV1rh411e7E5vd_sou...
    99+
    2024-04-02
  • 在 React Native 中给第三方库打补丁的过程解析
    目录安装使用示例有时使用了某个React Native 第三方库,可是它有些问题,我们不得不修改它的源码。本文介绍如何修改源码又不会意外丢失修改结果的方法。 我们可能不方便给原作者提...
    99+
    2022-11-13
    React Native第三方库打补丁 React Native第三方库
  • React中10种Hook的使用方法
    本篇文章给大家分享的是有关React中10种Hook的使用方法,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。React Hook是什么?React官网是这么介绍的: Hook ...
    99+
    2023-06-25
  • React中使用antd组件的方法
    目录antd使用antdantd antd 是基于 Ant Design 设计体系的 React UI 组件库,主要用于研发企业级中后台产品。 国内镜像为:https://ant-d...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作