Coffeescript 早午餐-需要冲突
我正在使用coffeescript和brunch.io在一个Coffeescript 早午餐-需要冲突,coffeescript,brunch,Coffeescript,Brunch,我正在使用coffeescript和brunch.io在一个app.js文件中编译我的项目,这太棒了 在主项目中,我有tools=require'utils/tools' 在我的库中,我还有一个utils目录(不同于带有工具文件的主项目目录。因此在库代码中:tools=require'utils/tools' 然后在一个浏览器中,我寻找主项目和我的库 最大的问题是,早午餐只导入第一个utils/tools,而不导入第二个(因为我可以看到所有东西都是全局的,而且utils/tools已经设置好
app.js
文件中编译我的项目,这太棒了
- 在主项目中,我有
tools=require'utils/tools'
- 在我的库中,我还有一个utils目录(不同于带有工具文件的主项目目录。因此在库代码中:
tools=require'utils/tools'
utils/tools
,而不导入第二个(因为我可以看到所有东西都是全局的,而且utils/tools已经设置好了)
我怎么解决这个问题呢?我已经有了两个想法,但我想我可以找到更好的办法
- 1解决方案:重命名文件夹(例如:utils2/)
- 2解决方案:重命名文件(例如:utils/tools2.coffee)
require
定义域名或命名空间吗
致意
PS:这是早午餐中的要求。我没有点头。s:pes128答案:
解决方案
将模块配置更改为向组件添加名称空间。您可以编写自定义包装,但最干净的方式可能是
modules:
nameCleaner: (path) ->
"myComponentName/#{path.replace(/^app\//, '')}"
或者这个更可重用的版本从package.json中获取名称
{name} = require './package'
modules:
nameCleaner: (path) ->
path.replace /^app/, name```
你为什么要降低这个问题的等级?require有很多实现。所以它可能取决于实现。