Я новичок в AngularJS и пытаюсь создать простое приложение, которое позволит мне загружать файлы на мой веб-сайт, основанный на Laravel. Я хочу, чтобы форма показывала мне предварительный просмотр того, как будет выглядеть загруженный элемент. Поэтому я использую ng-model для достижения этого, и я наткнулся на следующее:
У меня есть вход с некоторыми базовыми стилями бутстрапа, и я использую пользовательские скобки для шаблонов AngularJS (потому что, как я уже упоминал, я использую Laravel с его системой лезвий). И мне нужно удалить пробелы из ввода (по мере ввода) и заменить их тире:
<div class="form-group"><input type="text" plaeholder="Title" name="title" class="form-control" ng-model="gnTitle" /></div>
И у меня есть следующее:
<a ng-href="/art/[[gnTitle | spaceless]]" target="_blank">[[gnTitle | lowercase]]</a>
И мой app.js выглядит так:
var app = angular.module('neoperdition',[]);
app.config(function($interpolateProvider){
$interpolateProvider.startSymbol('[[').endSymbol(']]');
});
app.filter('spaceless',function(){
return function(input){
input.replace(' ','-');
}
});
Я получаю следующую ошибку: TypeError: Не удается прочитать свойство "replace" из undefined
Я понимаю, что мне нужно определить значение, прежде чем фильтровать его, но я не уверен, где его точно определить. А также, если я его определяю, я не хочу, чтобы он менял местозаполнитель.