<template>
<input
class="input border border-gray-400 appearance-none rounded w-full px-3 py-3 pt-5 pb-2 focus focus:border-indigo-600 focus:outline-none active:outline-none active:border-indigo-600"
:value="name === null ? max_slippage : name"
@input="name = $event.target.value"
name="inputSlipage"
id="slipage"
type="text"
>
</template>
<script>
export default {
data() {
return {
max_slippage: null,
name: null
}
}
}
</script>
npm i
- установить зависимости(чтоб была папка node_modules
).npm
неизвестна - надо поставить Node.js (LTS версию), перезапустить терминал и повторить.scripts
в package.json
и запускаем то что похоже на нужное. Для vue
это обычно:npm run serve
- для разработки;npm run build
- для сборки.javascript
и работает он с файлами .js
. Ни о каких .vue
он знать не знает. Нельзя просто написать module
и ожидать что оно само заработает. loader
'ы, которые собственно и творят всю магию. Когда ты пишешь import componentName from './components/template.vue'
сборщик находит в конфиге специальный loader
для .vue
и запускает его, тот обрабатывает файл и выдаёт в результате валидный js
, который уже в свою очередь и импортируется. Вне сборщиков, в чистом браузере, поддержки loader
'ов само собой (пока?) нет. params
, кроме специального исключения для *
.slug
вам не очень нужен, то можно сделать так:{
path: '/product/*',
name: 'Product',
params: true,
component: () => import(/* webpackChunkName: "Category" */ '../views/ProductCard')
},
<router-link :to="{name:'Product', params: {pathMatch: item.url}}</router-link>
v-bind:
это то же самое что :
. А key
должен стоять на каждом итерируемом элементе. Уникальный для каждого элемента. Это очевидно, если понимать нахрена он вообще нужен(для обновления только тех кусков, что действительно обновились и сохранения тех, что не изменились).key
тебе нужен ещё и на label
. require
не "берёт картинки из папки", require
обрабатывает картинки loader'om
и выдаёт в ответ результат. Статический результат, который попадает в бандл. require(`./img/${name}.png`);
- не значит "взять картинку по имени name
из папки img
во время исполнения", это значит "во время компиляции взять все картинки с маской './img/*.png',
обработать loader'ом
, получить для каждой статическую ссылку, и положить в бандл". loader'ы
по умолчанию превращают маленькие картинки в data:uri
строки, а большие перекладывают в папочку imgs
и переименовывают с хэшем, возвращая путь. Но это по-умолчанию, а так они способны много всякой магии творить.public
копируются в результирующую папку как есть и доступны по /name.png
без require
, просто через обычный html
и css
. computed
не будет пересчитаться при обновлении ref'ов или dom-значений. Он работает с реактивными данными.computed
и поместите в mounted
, вручную присваивая значения переменной в data
. Не забудьте добавить значения по умолчанию, а также обновлять их при необходимости(по событию resize или ещё какому, способныму повлиять на эти размеры)./catalog/:slug/:option?
./catalog/:slug/(.*)?
и ловить любые пути.