2016-05-02 1 views
2

Я пытаюсь использовать Fine-Uploader с Browserify и не могу заставить его работать.Как использовать Fine-Uploader с Browserify?

До сих пор я пытался две вещи с версиями на 5.4.1 и 5.7.1:

  • Используя глобальную переменную qq, но я получил Uncaught ReferenceError: qq is not defined(…) ошибку,
  • Использование require('file-uploader'), в результате чего возникла ошибка Uncaught Error: Cannot find module 'fine-uploader'(…)

Вот эта информация мой package.json:

"browser": { 
    "fine-uploader": "./node_modules/fine-uploader/fine-uploader/fine-uploader.js", 
    ... 
}, 
"browserify-shim": { 
    "fine-uploader": "qq", 
    ... 
}, 
"dependencies": { 
    "fine-uploader": "^5.7.1", 
    ... 
} 

Я посмотрел на хранилище GitHub. Некоторые вопросы, где похоже на мою проблему пока не было дано никакого решения (за исключением того факта, что функция require будет доступна в 6.x версии)

Можете ли вы помочь мне выяснить, как использовать Fine-Uploader? Заранее спасибо.

+0

Я не пользуюсь браузером, поэтому я не могу дать вам какую-либо конкретную помощь, но аналогичный вопрос был открыт и ответил недавно - он касается использования Fine Uploader в модульном проекте с помощью WebPack: http: // stackoverflow .com/questions/36185540/fine-uploader-with-webpack-es6 –

ответ

1

Возможно, ваши варианты browserify-shim неверны, потому что это единственное отличие (AFAIK) между вашей установкой и моей. Я был в состоянии заставить его работать со следующим:

Мои package.json:

"dependencies": { 
    "fine-uploader": "5.7.1" 
}, 
"devDependencies": { 
    "browserify": "13.0.0", 
    "browserify-shim": "3.8.12" 
}, 
"browserify": { 
    "transform": [ 
    "browserify-shim" 
    ] 
}, 
"browserify-shim": { 
    "./node_modules/fine-uploader/fine-uploader/fine-uploader.js": "qq" 
}, 
"browser": { 
    "fine-uploader": "./node_modules/fine-uploader/fine-uploader/fine-uploader.js" 
} 

Мои index.js:

var fineuploader = require('fine-uploader') 

document.addEventListener('DOMContentLoaded', function() { 

    var fu = new fineuploader.FineUploader({ 
    element: document.getElementById('fu') 
    }) 

}, false); 

Мои index.html:

<html> 
    <head> 
    </head> 
    <body> 
    <script type="text/template" id="qq-template"> 
     <!-- add fine-uploader template here --> 
    </script> 
    <div id="fu"></div> 
    <script src="bundle.js"></script> 
    </body> 
</html> 

Я тогда в состоянии построить мой узел с: browserify . -d -o bundle.js a nd может видеть загрузчик на DOM, когда я загружаю index.html в браузер.

+0

'' browserify ": ​​{" transform ": [" browserify-shim "]}' сделал трюк. Дело в том, что он нарушил «вендорские» проекты проекта. Поэтому я поставил FineUploader в «вендоры», и все сработало. Спасибо за вашу помощь. – Erazihel

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

  • Нет связанных вопросов^_^