Я внедряю некоторый javascript в приложение Java, используя Rhino. Я следую примеру на веб-сайте Rhino, выполняя скрипт, вызывая метод методаStringString Context и передавая фактический скрипт в виде строки.Rhino, добавление кода из нескольких файлов javascript
У меня есть целая куча существующего кода javascript, который я бы хотел использовать. Я не хочу объединять все это в огромную String и передавать ее для оценкиString. Я бы предпочел загрузить код, чтобы я мог его вызывать из кода, который я передаю в файл оценкиString (вроде метода AddCode, который работает в системе управления скриптами Microsoft). Я хотел бы добавить код, как я могу добавить переменные, используя метод ScriptableObject.putProperty.
Есть ли способ сделать это? Может ли кто-нибудь предоставить фрагмент кода или ссылку на документацию. Благодаря!
Включите все ваши javascript-коды в одном файле. Прочитайте файл в 'StringWriter' и используйте его метод toString. Теперь используйте 'valuString' для анализа всего кода JavaScript и возврата объекта Scriptable. После этого вы можете просто использовать метод «get (String namespace, Scriptable jsObject)» для Scriptables для доступа к любому объекту в области видимости. – FK82
Просто замечание: если вы хотите включить шаблон продолжения-передачи (как вы заявили), вам нужно будет иметь все соответствующие функции в пределах области видимости и объявить эту область в 'Function.call (контекст сценария, область Scriptable, Scriptable thisObject, Object [] args) '. Поэтому я действительно не вижу преимущества разделения кода на фрагменты. – FK82