2013-07-31 2 views
1

У меня возникли проблемы с настройкой dojo. Все, что определено в конфигурации dojo, кажется, правильно загружается с использованием пути localhost:8080/Scripts/foo.js. Однако, если я затем попытаться загрузить модуль без этого, говорят:Настройка пути загрузчика доджо

require(['foo'], function (_foo) { }); 

Тогда клиент не запрос, с предпринятым путем быть localhost:8080/foo.js. Очевидно, неправильно.

Что мне нужно изменить?

// Configuration for the dojo AMD module loader 
dojoConfig = { 
    baseUrl: "/Scripts", 
    packages: [{ 
     name: 'esri', 
     location: 'esri' 
    }, { 
     name: 'dojo', 
     location: 'dojo/dojo' 
    }, { 
     name: 'dojox', 
     location: 'dojo/dojox' 
    }, { 
     name: 'dijit', 
     location: 'dojo/dijit' 
    }, { 
     name: 'jquery', 
     location: '.', 
     main: 'jquery-2.0.2' 
    }, 

Спасибо.

ответ

2

Любой из них решит вашу проблему:

  1. Набор dojoConfig.tlmSiblingOfDojo = false.
  2. Определите 'foo' как пакет с явным расположением.
+0

Документация Dojo: «baseUrl: (string) путь для добавления к вычисленному пути, если вычисленный путь является относительным, как описано ниже. Если определено, функция has-tlmSiblingOfDojo имеет значение false, в противном случае это правда." Так что это уже неверно. Однако я поместил foo в папку и определил папку как пакет. Кажется, это работает. Итак, пакет «bar», с «bar/foo», загружающий файл. – Tim

1

Посмотрите на эту ссылку: http://dojotoolkit.org/documentation/tutorials/1.6/dojo_config/

Возможно изменение от пакетов modulePaths бы помочь вам.

В противном случае я бы определить пакеты обычным способом:

<script src="//ajax.googleapis.com/ajax/libs/dojo/1.6.1/dojo/dojo.xd.js"></script> 

рассматривает

Смежные вопросы