在文件和代码模板中大写$ {NAME}

时间:2016-10-28 19:59:55

标签: intellij-idea

问题

首选项中 - >编辑 - >文件和代码模板我有一个React的模板:

import React from 'react';

class ${NAME} extends React.Component {

  render() {
    return (
      <div>
        #[[$END$]]#
      </div>
    );
  }
} 

export default ${NAME};

有没有办法将${NAME}

大写

我们有一个以小写字母命名文件的约定,但在React组件中应该大写。

其他信息

我知道IntelliJ的重构能力,你可以使用 Live Templates 来实现这个目标,但我想删除这个额外的步骤:)。

这可以在实时模板中进行,您可以在其中定义和引用像capitalize(fileNameWithoutExtension())这样的表达式,但我找不到在文件和代码模板中定义表达式的任何地方

2 个答案:

答案 0 :(得分:6)

所以在做了一些研究之后我想出了这个:

import React from 'react';

#set($capitalizedFilename = $NAME.substring(0,1).toUpperCase() + $NAME.substring(1))
class $capitalizedFilename extends React.Component {

  render() {
    return (
      <div>
        #[[$END$]]#
      </div>
    );
  }
} 

export default $capitalizedFilename;

答案 1 :(得分:1)

IntelliJ IDEA文件模板是Velocity模板。 Velocity允许您对变量使用标准String方法(有关示例,请参阅this question)。