JSPM

@tinyfe/naming-transform

0.0.9
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 1
  • Score
    100M100P100Q40850F
  • License MIT

Converting to different kind of naming style

Package Exports

  • @tinyfe/naming-transform
  • @tinyfe/naming-transform/es/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@tinyfe/naming-transform) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

@tinyfe/naming-transform

转换为不同类型的命名风格

Usage

import {
  style,
  baseCase,
  camel,
  capital,
  constant,
  dot,
  header,
  hyphen,
  kebab,
  param,
  path,
  pascal,
  snake,
  sentence,
  underscore,
  lowerCaseFirst,
  upperCaseFirst,
} from '@tinyfe/naming-transform';

style('userName'); // camel
style('USER_NAME'); // constant
style('user-name'); // kebab
style('UserName'); // pascal
style('user_name'); // snake
style('user_Name'); // snake
style('Username'); // ''
style('My user name is Rain120'); // ''

baseCase('my user name is rain120'); // my user name is rain120
camel('username'); // username
camel('user name'); // userName

capital('username'); // Username
capital('user name'); // User Name

constant('user name'); // USER_NAME

dot('user name'); // user.name

header('user name'); // User-Name
header('userName'); // User-Name

hyphen('user name'); // user-name
hyphen('USER NAME'); // user-name
kebab('user name'); // user-name
kebab('USER NAME'); // user-name

param('user name'); // user-name
param('USER NAME'); // user-name

path('user name'); // user/name

pascal('user Name'); // UserName
pascal('user name'); // UserName

snake('user name'); // user_name

sentence('my User Name is Rain120'); // My user name is rain120

underscore('user name'); // user_name

lowerCaseFirst('UserName'); // userName
upperCaseFirst('username'); // Username

命名风格(naming-style)

camelCased 驼峰式命名

单词用首字母大写分割, 首单词首字母小写

camel('user name'); // userName

PascalCase 帕斯卡/大驼峰命名

单词用首字母大写分割, 首单词首字母大写

pascal('user name'); // UserName

kebab-cased 短横线命名(又称烤串命名) / hyphen-cased 连字号格式命名

单词用 - (中划线) 分割

hyphen('user name'); // user-name
kebab('user name'); // user-name

snake_cased 蛇型命名

单词间使用 _ (下划线) 分割, 全小写 如果所有单词都小写, 称之为 lower snake case (小蛇式), 例如get_user_name。 如果所有单词都大写, 称之为 upper snake case (大蛇式), 例如GET_USER_NAME

snake('user name'); // user_name

UnderScore_cased 下划线命名

单词间使用 _ (下划线) 分割, 不区分大小写

underscore('user name'); // user_name

CONSTANT_CASED 常量命名

单词全大写, 用 _ (下划线) 分割

constant('user name'); // USER_NAME

capital.cased

转换成首字母大写的字符串

capital('user name'); // User Name

dot.cased

转换成用 . 分隔的字母小写的字符串

dot('user name'); // user.name

header.cased

转换为用 - 分隔的首字母大写的字符串

header('user name'); // User.Name

param.cased

转换成用 - 分隔的字母小写的字符串

param('user name'); // user-name

path.cased

转换成用 / 分隔的字母小写的字符串

path('user name'); // user/name

sentence.cased

转换成用 空格 分隔的首大写,其他字母都小写的字符串

sentence('my User Name is Rain120'); // My user name is rain120

base.cased

转换成用 空格 分隔的小写字母

baseCase('my User Name is Rain120'); // my user name is rain120

Utils

lowerCaseFirst

首字母小写

lowerCaseFirst('RAIN120'); // rAIN120

upperCaseFirst

首字母大写

upperCaseFirst('rain120'); // Rain120

参考

Case Styles: Camel, Pascal, Snake, and Kebab Case

Letter Case

change-case