我目前正在办公室内部网站上工作。我一直在使用vue.js,因为它具有轻松维护大量循环和动态内容页面的能力。我还选择了vue,因为对它的研究使页面转换看起来非常简单。
很遗憾,我的IT部门不愿将站点实际托管在服务器上;迫使我将此项目保留为HTML页面的静态文件夹。因此,vue页面元素似乎无法在这样的环境(,
是否有在静态html网站中应用vue页面转换的方法?如果没有,是否可以延迟页面加载,以便在页面之间包含触发的CSS动画?
答案 0 :(得分:0)
好吧,不,您甚至可以使用Vue Cli进行任何vue复制,并可以将其部署在任何类型的Web服务器上。您只需要一台本地计算机即可完成所有笨拙的事情(编译,缩小js, preprocessCSS等),并且当您需要部署应用程序时,唯一要做的就是在本地开发计算机上运行生产命令(例如“ npm run prod”),并仅上传经过重新生产的已处理文件。
Vue以两种方式工作,运行时+编译器或仅运行时:
因此,vue页面元素在这样的环境(,等)中似乎不起作用。
必须使用Vue Loader编译器对Vue中的文件组件进行“编译”,并且要实现这一点,您需要使用一些模块构建器(例如webpack)。 Is explained here in the oficcial documentation
但这并不意味着您需要使用模块构建器来使带有Vue的网站使用自定义组件。如果您不想使用Webpack,则可以在页面中加载Vue的Runtime + Compiler版本,并且编译器会将所有非DOM标签“编译”到Vue组件,请检查代码段
var app = new Vue({
el: '#app',
data: {
article: 'first'
}
})
.fade-enter-active, .fade-leave-active {
transition: opacity .5s;
}
.fade-enter, .fade-leave-to /* .fade-leave-active below version 2.1.8 */ {
opacity: 0;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.17/vue.min.js"></script>
<section id="app">
<header>
</header>
<transition appear name="fade" mode="out-in">
<article key="first" v-if="article === 'first'" @click="article = 'second'">
<h1>Title of the Page</h1>
<p> some content (click me to change the content)..<p>
</article>
<article v-else @click="article = 'first'" key="second">
<h1>Another Title</h1>
<p> some content ..<p>
</article>
</transition>
</section>