Как мне HTTP GET получить файл *. js и извлечь переменные экспорта? - PullRequest
1 голос
/ 02 февраля 2020

Я пишу сайт на Laravel, чтобы дополнить игру, написанную на Node. Он извлекает информацию непосредственно из файлов игры. js, хранящихся на GitHub, и планируется использовать Vue для генерации хороших HTML для отображения данных.

. js файлы имеют форма:

'use strict'

let x = {...};

exports.x = x;

Я могу импортировать файлы с помощью запроса PHP (просто используя 'file') и передать их в JS с помощью jQuery .getScript или ax ios. получить (пока). Тем не менее, я испытываю большие затруднения, когда придумываю способ извлечения значений «х» в разделе экспорта. Если бы я писал приложение JS в узле, я бы просто сделал следующее:

var xFile = require('xFile');

var x = xFile.x;

Однако я не могу понять, как это сделать здесь, поскольку оба метода GET возвращают строку, а не JS файл. JSON .parse () не работает, и я хотел бы найти решение, которое не просто заменяет текст, отличный от JSON, так как мне нужно многоразовое решение для других файлов. Я не думаю, что у кого-нибудь есть идеи?

Большое спасибо!

Ответы [ 2 ]

0 голосов
/ 17 февраля 2020

Мне удалось это выяснить! Это немного неудобно, но вы можете запустить файл узла в PHP с помощью команды exec. Я просто написал файл узла для импорта файла и возврата полезных данных. Это, вероятно, не оптимальное решение, но оно работает для меня, так как я гораздо увереннее с JS, чем с PHP.

0 голосов
/ 02 февраля 2020

Вы можете попробовать что-то вроде ниже.

Вы можете динамически создать тег сценария, прикрепить сценарий к телу и добавить свой код javascript, используя innerHTML.

Вы звоните. этот скрипт в вашем ajax коде ответа.

let script = document.createElement('script');
script.innerHTML = 'alert("Hi")';
 document.querySelector('body').appendChild(script);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...