Я получаю сообщение об ошибке «Ошибка типа: не удается прочитать свойство« originStackTrace »из ноль» в электронном, я не могу понять, почему? - PullRequest
1 голос
/ 10 января 2020

Это произошло, когда я попытался отправить форму

Javascript

 this.submitForm = (formID) => {
        let {ipcRenderer} = require("electron");

        const myData = $(`#${formID}`).serialize();

        ipcRenderer.sendSync("create-form-data",myData);
    };

HTML

<div class="col-9">
            <form onsubmit="theTemplate.submitForm('createForm')" id="createForm" action="GET" class="tab-content">
                <div id="goal" data-tab-content class="active form-group">
                    <h1>Goal</h1>
                    <label>What is your desired outcome?</label>
                    <input name="goalOne" type="text" class="form-control">

                    <label>What type of person achieves that outcome?</label>
                    <input name="goalTwo" type="text" class="form-control" >

Поиск в Google обычно не дает никаких результатов. И я понятия не имею, что такое «трассировка стека происхождения».

1 Ответ

0 голосов
/ 10 января 2020

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="col-9">
            <form onsubmit="submitForm(event,'createForm')" id="createForm" action="GET" class="tab-content">
                <div id="goal" data-tab-content class="active form-group">
                    <h1>Goal</h1>
                    <label>What is your desired outcome?</label>
                    <input name="goalOne" type="text" class="form-control">

                    <label>What type of person achieves that outcome?</label>
                    <input name="goalTwo" type="text" class="form-control" >
                    <input type='submit'/>
                 </div>
             </form>
</div>
<script>
  const formToJSON = elements => [].reduce.call(elements, (data, element) => {
     if(element.name) //For skip the named value
     data[element.name] = element.value;
     return data;
  }, {})

  const submitForm = (event, formID) => {
    event.preventDefault()
  
    //let {ipcRenderer} = require("electron");
    const myData= formToJSON(event.target)
    console.log(myData)

    //ipcRenderer.sendSync("create-form-data",myData);
  };
</script>

Пожалуйста, проверьте этот фрагмент кода. Это просто для извлечения данных формы в соответствии с вашими потребностями. Я изменил ваш код html и js. Это извлечет данные из формата JSON.

Затем скопируйте их в свой проект и включите часть ip c. Затем он успешно отправит данные JSON в основной процесс.

Чтобы узнать, как установить связь между main и renderer process. Пожалуйста, проверьте этот ответ.

как общаться между реакцией и электроном

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...