0

我在带有requirejs-railsgem 的 Rails 应用程序中使用 requireJS。我想要实现的是创建几个包含通用代码的包。例如libs_a, libs_b, libs_c, ...,然后为应用程序的某些页面创建自己的包,其中包含仅与这些页面相关的模块。问题是应该为每个页面列出所有常见模块,以将它们从优化文件中排除,例如:

# config/requirejs.yml

modules:
  # in 'libs' all dependencies should be included
  - name: 'libs_a'
    ...
  - name: 'libs_b'
    ...
  - name: 'libs_c'
    ...
  # in 'pages' all dependencies should be excluded since all of them are already in 'libs'
  - name: 'page_a'
    include: ['a1', 'a2', 'a3', ...]
    exclude: ['libs_a', 'libs_b', 'libs_c', ...]
  - name: 'page_b'
    include: ['b1', 'b2', 'b3', ...]
    exclude: ['libs_a', 'libs_b', 'libs_c', ...]
bundles:
  libs_a: [...]
  libs_b: [...]
  libs_c: [...]
  ...

对于大量的模块,它变得有点麻烦。据我了解,没有选项可以仅将构建配置中列出的那些模块包含在优化文件中并跳过所有依赖项。这样exclude: ['libs_a',...]就可以避免重复。你如何解决这样的问题?

4

1 回答 1

0

只是一个想法 - 应该可以将构建配置定义为 .js 文件。如果你这样做,你将能够包含简单的逻辑来修改带有排除库的配置。

于 2015-08-19T00:24:18.157 回答