0

我这样做是为了加载文件app夹中的所有 JS 文件

ss.client.define('main', {
  view: 'app.jade',
  css:  [
    'libs/reset.css',
    'app.styl'
  ],
  code: [
    'libs/jquery-2.1.0.min.js',
    'libs/angular-1.2.10.min.js',
    'libs/lodash-2.4.1.min.js',
    'app'
  ],
  tmpl: '*'
});

中有 3 个文件app,2 个是默认项目附带的,1 个是我添加的。前两个工作正常,但我添加的那个没有被执行!

有趣的是,当该文件中有错误时,我在 Chrome 控制台中设置它们,但没有执行任何函数或将变量添加到页面。

任何想法为什么?

4

1 回答 1

0

它将需要访问窗口变量/全局对象。

因此,您需要require从您的入口文件中获取它。通常这意味着在您的实际代码 (/client/code/[...]) 目录中拥有 lodash 代码文件。即你不会把它放在你的 libs 文件夹中,而是放在你的主应用程序文件夹中,尽管你可以在那里创建另一个 libs 文件夹。

这就是我一直需要做的事情——例如——bootstrapJS。当他们设置它时,它违背了客户端的组织,但它是这样的事情需要完成的方式。

另一种方法是从您的主 app.jade 视图文件远程(从 CDN)请求它。

script(src="//cdnjs.cloudflare.com/ajax/libs/lodash.js/2.4.1/lodash.min.js")

于 2014-02-20T10:55:24.997 回答