2017-01-18 6 views
0

Я создал счетчик символов для полей ввода SEO с Vue JS. Он отлично работал в jsfiddle, но когда я реализовал его с Laravel. Он не работает. Это не дает какой-либо ошибки, он показываетПроблема с реализацией vue js с Laravel

NaN characters remaining.

, где он должен показать количество оставшихся символов.

Мой код в jsfiddle, который отлично работает в jsfiddle.

<script src="https://unpkg.com/vue/dist/vue.js"></script> 
<div id="app"> 
    <label for="title">SEO Description</label><br> 
     <textarea v-model="seo_description" value="{{seo_description }}" maxlength="156"> 
     </textarea> 
    <p>Characters remaining:@{{ maxlength-seo_description.length }}</p> 
</div> 
new Vue({ 
    el: "#app", 
    data: { 
    maxlength: 156, 
    seo_description: '' 
    } 
}); 

Мой код в виду Laravel:

<div id="app"> 
    <label for="title">SEO Description</label><br> 
     <textarea name="keyword" v-model="keyword" class="form-control meta" maxlength="255"> 
     </textarea> 
     <p>@{{ maxlength-keyword.length }} characters remaining.</p> 
</div> 
<script> 
var keyword = new Vue({ 
    el: "#app", 
    data: { 
    maxlength: 255, 
    keyword: '' 
    } 
}); 

Я попытался скопировать мой код в jsfiddle и запустить, он работает perfeectly там. Но он не работает с laravel.

+0

Side Примечание: Вы должны действительно рассмотреть вопрос о внесении '' charactersRemaining' с computed' свойства. – ceejayoz

+0

Я не установил gulp, и я не связал vue js с моим laravel. Я недавно установил laravel. Мой vue js dev tool chrome extension обнаружен vue js. Поэтому я не думал, что мне нужно связать vue js с этим laravel. –

+0

@ceejayoz Он работает так в скрипке, но не работает с laravel, почему ??????????? –

ответ

0

Это должно быть проблема

value="{{seo_description }}" 

Вы не избежать его vue.js. Вы должны либо сделать

value="@{{seo_description}}" 

или

:value="seo_description" 

И вам действительно нужно добавить seo_description к данным. Всегда начинайте данные по умолчанию, даже если значение пусто.

Однако вам это совсем не нужно. Поскольку вы привязали значение к модели уже.

Последнее замечание: Я думаю, что вы всегда должны обернуть vue.js выходы как

<p>@{{ maxlength-keyword.length }} characters remaining.</p> 

в элементы

<p><span>@{{ maxlength-keyword.length }}</span> characters remaining.</p> 
0

в Laravel 5,3 вю JS был поставлен into.default вместе с JQuery.

попытайтесь удалить app.js или main.js из основного макета или макета или любого другого макета, и в это время вы можете использовать экземпляр vue для каждого клинка.

забудьте включить первый VUE зависимости от расслоения плотной компоновки дома