1

うなり声とアーモンドを使用してrequirejs最適化構成を作成しようとしています。構成は次のとおりです。

requirejs:
      build:
        options:
          almond: true
          dir: 'build'
          appDir: ''
          baseUrl: '../client'
          wrap: true
          include: '../client/main'
          keepBuildDir: true
          paths:
            underscore: 'client/vendor/underscore'
            jquery    : 'client/vendor/jquery'
            backbone  : 'client/vendor/backbone'

フォルダ構造:

ここに画像の説明を入力

エラー:

C:\Users\User\Documents\Source\Project>grunt requirejs
Running "requirejs:build" (requirejs) task
>> Error: ENOENT, no such file or directory
>> 'C:\Users\User\Documents\Source\Project\build\models\MenuItem.js'
>> In module tree:
>>     ../client/main
Warning: RequireJS failed. Use --force to continue.

Main.js コード (coffeescript で記述)

requirejs.config(
  baseUrl: "client"
  shim:
    'backbone':
      deps: ['jquery']
      exports: 'Backbone'
    'jquery':
      exports: '$'
    'underscore':
      exports: '_'
  paths:
    jquery: 'vendor/jquery-1.11.0'
    underscore: 'vendor/underscore'
    backbone: 'vendor/backbone'
)

define 'start', ()->
  window.types =
    Models: {}
    Collections: {}
    Views: {}
  null

require ['models/MenuItem', 'views/MenuItem'], (MenuItemModel, MenuItemView)->
  view = new MenuItemView(
    new MenuItemModel(),
    "#app",
    'first'
  )
  view.render();
  null

複数の js ファイルにまたがるプロジェクト全体を 1 つのファイルにコンパイルして、requirejs が不要になるようにしたいと考えています。アーモンド js を使用してこれを実行しようとしていますが、ビルド タスクは参照ファイルのパスに関連する参照ファイルを探しません。正しい構成を教えてください。

4

0 に答える 0