const FIELDS = ['field1','filed2'];
foreach(FIELDS as $field){
if(!$user->can('manufacturer_order__edit_field_'.$field){
throw new Error('ffdsf');
}
}
<script>
var vueAppParams = {
dynamicParams: {
page_id: <?=$page->id?>
}
}
</script>
<script>
...
axios.post('/books/rating', {
rating: 'rating',
page_id: window['vueAppParams'].dynamicParams.page_id,
})
.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
});
}
...
</script>
<span>(\s*)(.*?)<\/span>
и нажми на preg match all <script>
var inputKeys = [];
function handleStroke(event) {
inputKeys.push(event.keyCode);
onSubmitForm();
};
function onSubmitForm(){
console.log('Через , =' + inputKeys.join(','));
// если надо пееркодировать, закодировать https://developer.mozilla.org/en-US/docs/Web/API/TextDecoder
var utf8decoder = new TextDecoder('utf8');
console.log('Пример, в utf8 =' + utf8decoder.decode(new Uint8Array(inputKeys)));
}
</script>
<div *ngIf="validationErrors.myField">{{validationErrors.myField}}</div>
, в ангуляре, который js правда с таким вариантом возможны проблемы, в связи с тем что переменные в объекты не реактивны, поэтому там лучше так делать: <div *ngIf="hasValidationError">{{validationErrors.myField}}</div>