Процесс выполнения проекта VUE: связь вызовов между index.html, main.js, App.vue, index.js

1. Резюме

Резюме одного предложения:
1. index.html — домашняя страница, запись проекта,
2. корневой компонент App.vue,
3. файл main.js — запись
, 4. index.js, устанавливающий имя маршрутизации и сопоставление ресурсов, рендеринг в приложение. Когда Vue
запускает проект, main.js используется в качестве входного файла проекта.Во время работы найдите место, где нужно смонтировать экземпляр, то есть в index.html.В начале содержимое в будет отображаться точка монтирования index.html, но затем она заменяется содержимым в шаблоне в компоненте в экземпляре, поэтому мы увидим, что содержимое тела в index.html будет отображаться на мгновение.

![Вставьте сюда описание изображения](https://img-blog.csdnimg.cn/97413ff6452e4c809272f0833b326bd8.pngвставьте сюда описание изображения

1. Как объяснить и выразить тег div, идентификатор которого равен app в index.html?

Точка монтирования: тег div с идентификатором app в index.html является точкой монтирования, и тогда наш корневой экземпляр Vue будет смонтирован в эту точку монтирования.

2. Обобщите взаимосвязь между main.js, App.vue и index.html в Vue.

Перенос из или ссылка: сводка взаимосвязи между main.js, App.vue и index.html в Vue
https://www.cnblogs.com/chenleideblog/p/10484554.html .

В инициализированном проекте Vue первые три файла, с которыми мы сталкиваемся, это main.js, App.vue и index.html, Мы можем узнать из обучающих видео или официальных документов:

вставьте сюда описание изображения

  • index.html — домашняя страница, запись проекта
  • App.vue — корневой компонент
  • main.js — входной файл

Так какая связь между этими файлами?

1. Сначала просмотрите содержимое в index.html: (Чтобы хорошо идентифицировать каждый файл, я пометил каждый файл текстом)
вставьте сюда описание изображения
2. В App.vue я сделал следующую обработку:

вставьте сюда описание изображения
3. В main.js начальное содержимое файла такое:
вставьте сюда описание изображения

Так что насчет веб-страницы, которую мы регистрируем?

Эффект веб-страницы следующий:

вставьте сюда описание изображения

Другими словами, в части заголовка веб-страницы загружается заголовок, определенный в index.html, а в основной части загружается часть, определенная в App.vue. (Однако следует отметить, что в момент открытия браузера в основной части браузера сразу же отображается часть тела, определенная в index.html)

Затем мы можем проанализировать приведенную выше логику: когда браузер обращается к проекту, файл index.html является первым, к которому обращаются.

в то время как в index.html

<div id="app">来自index.html正文中的内容</div>

Существует точка монтирования с идентификатором приложения, и тогда наш корневой экземпляр Vue будет смонтирован в эту точку монтирования;

В качестве входного файла проекта используется main.js. В main.js создается новый экземпляр Vue. В экземпляре Vue передается

new Vue({
    
    
  el: '#app',
  //components: {
    
    App },
  //template: '<App/>'
})

Сообщите экземпляру, куда его монтировать (то есть куда экземпляр загружается в index.html).

Затем в экземпляре регистрируется частичное компонентное приложение. Откуда берется это частичное компонентное приложение?

import App from './App.vue'

new Vue({
    
    
  //el: '#app',
  components: {
    
    App },
  //template: '<App/>'
})

Этот локальный компонент — App.vue в текущем каталоге;

А что за шаблон? Шаблон — это содержимое шаблона в компоненте App.vue. (шаблон заменит содержимое в исходной точке монтирования)

Таким образом, экземпляр Vue временно является содержимым компонента App.vue.

Итак, резюмируем:

Во время работы проекта main.js используется в качестве входного файла проекта.Во время работы найдите место, где нужно смонтировать экземпляр, то есть в index.html.В начале содержимое в точка монтирования index.html будет отображаться, но затем она заменяется содержимым в шаблоне в компоненте в экземпляре, поэтому мы увидим, что содержимое тела в index.html будет отображаться на мгновение.

Часть Title в index.html не будет заменена, поэтому она всегда будет сохранена.

https://www.cnblogs.com/Renyi-Fan/p/11109763.html

Подведем итог

В начале, когда я изучал Vue, я всегда не мог понять логику между файлами, поэтому я продолжал бродить на месте.После того, как я попробовал разработку апплетов WeChat, у меня было смутное разделение времени, и я развернулся. Я продолжал работать над развитием проекта Vue, и в результате вещи, которые изначально были неясны, вдруг стали ясны.

В корневом каталоге находится файл index.html, в каталоге src — main.js и App.vue, а в папке маршрутизатора — index.js Понимание связи между этими файлами прояснит идеи для последующей разработки.

index.html — домашняя страница, запись проекта

index.html — это первый сайт, который посещает проект. Обычно мы определяем пустой корневой узел. Экземпляр, определенный в main.js, будет смонтирован под корневым узлом, а содержимое будет заполнено компонентами vue.

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>首页title</title>
  </head>
  <body>
    <div id="app"></div>
    <!-- built files will be auto injected -->
  </body>
</html>

App.vue — корневой компонент

Мы часто создаем файлы с суффиксом .vue в Vue.Файлы .vue обычно состоят из трех частей, которые заключены в теги и соответственно.

Мы можем понять три вышеперечисленные части как три части html, javascript и css, которые мы изначально изучили во внешнем интерфейсе.

Среди них мы обычно устанавливаем веб-интерфейс, который мы хотим использовать, обычно работаем с данными, определяем, как данные выпускаются и т. Д., Который ориентирован на логику и в основном отвечает за стиль в этикетке.

Комбинация трех вышеперечисленных элементов составляет веб-страницу, которую мы видим.Как правило, когда мы разрабатываем новую страницу, мы обычно создаем новый файл .vue и завершаем написание трех ссылок в файле.

<template>
  <div id="app">
    <router-view></router-view>
  </div>
</template>

<script>
export default {
    
    

  name: "app"
};
</script>
<style>
.add-container {
    
    
  margin-bottom: 20px;
}
</style>

Пополнить:

  • 【шаблон】

Шаблон может содержать только один родительский узел, то есть может быть только один элемент div верхнего уровня (например, на приведенном выше рисунке родительским узлом является элемент div #app, у которого нет родственных узлов).

Это представление подмаршрутизации, и здесь отображаются следующие страницы маршрутизации.

Давайте сделаем метафору, это похоже на слот, при переходе на определенный маршрут страница под маршрутом вставляется в этот слот для рендеринга и отображения.

  • 【скрипт】

Vue обычно пишется на es6 и экспортируется с экспортом по умолчанию, который может содержать данные, жизненный цикл (смонтированный и т.д.), методы (методы) и т.д.

  • 【стиль】

стиль через тег стиля

Если вы хотите импортировать внешние файлы css, вам сначала нужно установить пакет зависимостей css-loader для проекта, открыть cmd, войти в каталог проекта, ввести npm install css-loader и нажать Enter. После завершения установки вы можете импортировать необходимые файлы css под тегом стиля. Таким образом, мы можем инкапсулировать стили под стилем, записать их в папку css, а затем ввести их на страницу для использования.Вся страница vue также выглядит более лаконично.

<style> 

     import './assets/css/public.css'  

</style> 

main.js — входной файл

main.js в основном представляет структуру vue, корневые компоненты и настройки маршрутизации, а также определяет экземпляр vue, как показано на рисунке ниже.

компоненты: {App} — это введенный корневой компонент App.vue.

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

import Vue from 'vue'    /*引入vue框架*/
import ElementUI from 'element-ui'     /*引入element-ui样式*/
import App from './App'     /*引入根组件*/
import router from './router'    /*引入路由设置*/

Vue.config.productionTip = false    /*关闭生产模式下给出的提示*/

 /*定义一个新实例*/
new Vue({
    
    
  el: '#app',
  router,
  store,
  template: '<App/>',
  components: {
    
     App }     /*此处为引入的根组件的App.vue*/
})

router.js — конфигурация маршрутизации

В папке маршрутизатора находится файл index.js, который является файлом конфигурации маршрутизации.

import Vue from 'vue'    /*引入vue框架*/
import Router from 'vue-router'   /*引入路由依赖*/
import Hello from ‘@、components/Hello’    /*引入页面组件,命名为Hello*/

Vue.use(Router)   /*使用路由依赖*/

   /*定义路由*/
export default new Router({
    
    
  router:[
   {
    
    
       path: '/ ',
       name: 'Hello',
       component: Hello
    }
 ]
})    

Маршрут с путем '/' определен здесь, а страница, соответствующая маршруту, является компонентом Hello, поэтому, когда мы посещаем http://localhost:8080/#/ в URL-адресе браузера, будет отображаться компонент Hello. Точно так же мы можем установить несколько маршрутов, таких как '/index', '/list', конечно, сначала должен быть введен компонент, а затем маршрут должен быть установлен для компонента.

Supongo que te gusta

Origin blog.csdn.net/kalvin_y_liu/article/details/125126566
Recomendado
Clasificación