约曼提示:如何从字符串中生成有效的文件名
Yeoman prompt: how generate a valid filename from a string?
是否在Yeoman或Node中实现了从字符串生成有效文件名的方法?
我的目标是用普通字母代替重音字母,用破折号代替空格,等等。
基本上,您所需要的只是一个函数,该函数可以删除特殊字符,并可能使用任意系统替换它们。
passy已经命名了一个选项,即使用:
this._.dasherize(str)
尽管如此,您还是可以使用一些其他选项。例如,您可以查看undercore.string模块,该模块为此提供了一些功能。因此,我强烈推荐slugify
功能:
来自文件:
将文本转换为URL段塞。用破折号替换空白、强调字符和特殊字符。
举个例子:
_.slugify("Un éléphant à l'orée du bois")
=> 'un-elephant-a-loree-du-bois';
这应该正是您所需要的,并且仍然保持良好的可读性。
希望这能有所帮助。
对于Yeoman生成器,处理此问题的常见方法是在JavaScript生成器代码中使用this._.dasherize(str)
或在模板中使用<%= _.dasherize(str) %>
。它不考虑重音字母,但这些应该是有效的文件名。
console.log(this._.dasherize("some userProvided string"));
// output: "some-user-provided-string"
相关文章:
- TableExport jquery插件:文件名和扩展名问题
- 可以设置“;文件名"发生错误时显示的内联脚本标记的
- 如何有效地将游戏数据存储在URL查询字符串中
- 如何使用Node.js最有效地解析网页
- 通过javascript下载文件时设置文件名
- jquery代码在Mozilla中有效,但在其他浏览器上无效
- 有效形式-始终只显示1个错误[角度]
- Javascript袖珍参考,第121页:这是怎么回事;猴子补丁”;方法应该有效
- 单击仅在第二次单击后有效
- 什么'是在asp.net MVC中将本地化的resources.resx文件转换为javascript文件的有效
- 为什么自我执行匿名有效
- D3.js生成有效的SVG,但不显示任何内容
- 如何在AngularJS中有效地检查日期是否有效
- 为什么不是'我的函数在解析云代码中工作吗?当我在Angular和Express中测试时,它是有效的
- 滚动在Chrome中有效,但在Firefox或IE中无效
- JS-使用Ajax获取文件名
- 有效地获取两个区间之间的随机整数
- Rails将JavaScript对象存储到Model的有效方式
- 如何在 Javascript 中从任意字符串制作有效的文件名
- 约曼提示:如何从字符串中生成有效的文件名