интегрировать vue js с asp.net core 2.1

Может кто-нибудь помочь с объяснением того, как я могу использовать vue.js с asp.net core 2.1. в идеале я бы просто хотел нажать f5 в visual studio 2017 и загрузить сайт.

Я знаю, что ms ранее имели спа-шаблоны, но они, похоже, были оставлены. theres шаблон стартера на github тоже, но он использует .net core 2.0.

asp.net-core,vue.js,single-page-application,

1

Ответов: 1


1

Я пытаюсь использовать Vue.js с MVC Core 2.1 для многостраничного приложения на данный момент и нашел рабочее решение.
Я вижу, что вы упоминаете SPA, хотя мой ответ будет для многостраничных приложений, но некоторые из них могут применяться.

Мой подход

Я создал main.jsфайл wwwroot/resources/js/и componentsподпапку внутри этого каталога, а также layoutпапку в компонентах.

В main.jsя создаю экземпляр Vue и присоединяю его к корневому элементу #app в HTML. В этом js-файле я также регистрирую большинство компонентов globablly, если они не нужны только для определенных компонентов. Моя main.jsвнешность выглядит примерно так:

# wwwroot/resources/js/main.js

import Vue from 'vue';
import Axios from 'axios';
import BaseLayout from './components/layout/BaseLayout.vue';

window.axios = Axios;

Vue.component("base-layout", BaseLayout);
new Vue({
    el: "#App"
});

В _layout.cshtmlфайле у меня есть следующий (соответствующий контент):

# Views/Shared/_Layout.cshtml
<div id="App">
    <base-layout>
        @RenderBody()
    </base-layout>
</div>

<script src="~/resources/js/bundle.js"></script>


Если вас интересует только SPA - я бы, наверное, сделал что-то вроде:

# wwwroot/resources/js/main.js

import Vue from 'vue';
import App from './App.vue';
new Vue({
    el: "#app",
    render: (h) => h(App)
});

# wwwroot/resources/js/App.vue

<template>
    <div id="app">
         <-- Use other components here -->
    </div>
</template>

<script>
    export default {
        name: "app",
        data: function() {
            return {
                // What evs
            }
        }
    }
</script>
asp.net-жильный, vue.js, одностраничный-приложение,
Похожие вопросы