Я работаю над приложением Laravel и только что добавил в форму пару полей, чтобы пользователи могли добавить два новых контакта в учетную запись.Поля отображаются в виде таблицы (файл - accounts-table.html) с:
<!--Letter Addressee Name -->
<td *ngIf="!responseData.loading" class="width-1 visible-lg-table-cell">
<input type="text" name="letterAddresseeNameTextField" ng-value= getLetterAddresseeName(responseData) ng-change = "getLetterAddresseeName()"><br>
</td>
<!--Preferred Addressee Name -->
<td *ngIf="!responseData.loading" class="width-1 visible-lg-table-cell">
<input type="text" name="preferredAddresseeNameTextField" ng-value = getPreferredAddresseeName(responseData) ng-change = "getPreferredAddresseeName()" ><br>
</td>
В TS для этой формы (account-table.ts) я добавил функции, которыевызываются атрибутами ng-change
ячеек таблицы:
public getLetterAddresseeName(data) {
if(data.myAccount='0') {
//data.letterAddresseeName = letterAddresseeNameTextField.value;
if(data.letterAddresseeName) {
AccountsController::addAddresseesToAccount();
console.log("data.letterAddresseeName: ", data.letterAddresseeName);
return data.letterAddresseeName;
}
else {
console.log("No letter addressee name in database ");
return;
}
}
else {
if(data.groupTag == null) {
console.log("data.groupTag == null ");
return;
}
else if(data.groupTag.indexOf('PENDING') > -1) {
console.log("data.group.indexOf('PENDING') > -1 ");
return;
}
else {
console.log("Else statement of getLetterAddresseeName() reached ");
return;
}
}
}
public getPreferredAddresseeName(data) {
if(data.myAccount='0') {
if(data.preferredAddresseeName) {
AccountsController::addAddresseesToAccount();
console.log("data.preferredAddresseeName: ", data.preferredAddresseeName);
return data.preferredAddresseeName;
}
else {
console.log("No preferred addressee name in database ");
return;
}
}
else {
if(data.groupTag == null) {
console.log("data.groupTag == null ");
return;
}
else {
console.log("Else statement of getPreferredAddresseName() reached ");
return;
}
}
}
Функция PHP addAddresseesToAccount()
, которая вызывается в этих функциях TS для фактического добавления новых контактов в учетную запись с помощью:
AccountsController::addAddresseesToAccount();
определяется в AccountsController.php с помощью:
public function addAddresseesToAccount( Request $request)
{
$account = app\Account::find($request->input('accountId'));
//dd("Value of account: ", $account);
if($request->input('letterAddresseeNameTextField') != null)
{
$account->letterAddresseeName = $request->input('letterAddresseeNameTextField'.value);
$account->save();
}
else
{
dd("letterAddresseeNameTextField value is blank ");
}
if($request->input('preferredAddresseeNameTextField') != null)
{
$account->preferredAddresseeName = $request->input('preferredAddresseeNameTextField'.value);
$account->save();
}
else
{
dd("preferredAddresseeNameTextField value is blank ");
}
return $account;
}
Когда я запускаю свое приложение с помощью команд:
gulp copy: angular
ng build --watch --sourcemaps = false
команда ng build
начинает компиляцию Angular, но затем выдает ошибку с сообщением:
Ошибка в пути/accounts-table.ts(519, 36): ошибка TS1109: выражение ожидается.
path / accounts-table.ts (547, 36): ошибка TS1109: выражение ожидается.
Две строки, на которые он жалуется, - это строки, в которых я вызываю функцию PHP для фактического обновленияс новыми адресами, которые были введены в форму.
Может кто-нибудь указать мне, что я здесь делаю неправильно?Почему я получаю эти ошибки, говорящие мне, что выражение ожидается?Я не хочу, чтобы выражение возвращалось, просто чтобы обновить учетную запись в базе данных ...