2016-02-29 2 views
0

Я работаю с Polymer 1.0, и теперь пришло время добавить внешнюю .JS-библиотеку.
Библиотека, которую я хочу добавить, называется SuperAgent, и это модуль Node.js, способный предоставлять мощные API-интерфейсы для XMLHttpRequests. Это также предлагает команда Полимера.Полимерные и внешние node.js Библиотеки

Шаг 01 - Добавление модуля становой

$ bower install --save superagent 

Шаг 02 - Добавление <script> ссылки

<!-- SuperAgent --> 
<script 
    type="text/javascript" 
    src="/bower_components/superagent/lib/client.js"></script> 

Сейчас я получаю сообщение об ошибке в Chrome говоря:

Uncaught ReferenceError: require is not defined 

Если я проверить файл client.js, то есть эти высказывания в начале, которые являются причиной моей ошибки:

/** 
* Module dependencies. 
*/ 

var Emitter = require('emitter'); 
var reduce = require('reduce'); 

Теперь мой проект осуществляется с использованием исключительно беседку, что мне нужно сделать для того, чтобы сделать «требовать» понятным моим приложением «Полимер»? Есть ли сценарий bower + script, который это делает?

+0

С сайта SuperAgent: «Работает с браузером и должен работать с веб-пакетом». Добавьте один из них в конвейер вашего проекта. 'require' не работает на клиентах, вам нужен один из этих инструментов для преобразования кода SuperAgent во что-то развертываемое. – Amadan

+0

Есть ли причина выбрать один «браузер» или другой «веб-пакет»? – Raffaeu

+0

Webpack - это настоящий классный малыш. http://survivejs.com/webpack_react/webpack_compared/ – krl

ответ

1

Я использовал SuperAgent раньше и я знаком с полимером (но не использовал его много)

SuperAgent является на стороне сервера nodeJS НПМ пакет используется, чтобы встать сервер для запуска партии модульных тестов и он затем выключается.

Полимер - это инструмент клиентской стороны, используемый для полной мощности тёмной DOM.

Как работают 2, я понятия не имею, но операторы require, используемые SuperAgent, являются nodeJS, требуют от операторов, требующих других модулей. Причина, по которой ваш браузер не понимает, требует, потому что браузеры еще не понимают модульность (хотя они скоро будут работать с модулями ES6 на пути).

+0

Спасибо за ответ, вот в чем дело, SuperAgent - это скрипт node.js, в то время как команда Polymer «продает его» в качестве основы для клиентских приложений для сложных XMLHttpReqeusts. – Raffaeu

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