1.vue文件引入css样式
刚开始写的时候代码量比较小 ,越到后面代码量越大,这样css样式也就会越大,代码不只不美观,并且也违背了模块化的道理。javascript
以APP.vue文件为例,如何引入css文件。试过不少方法,但感受都没有成功,偶然发现两篇博主的文章,结合了一下,发现成功了。下面具体介绍一下如何引入。css
首先在终端中安装vue
cnpm install style-loader --save-dev cnpm install css-loader --save-dev cnpm install stylus-loader --save-dev
安装完成后,打开项目的build文件夹中的webpack.base.js文件夹,在module中的rules中添加java
{ test: /\.css$/, include: [ /src/, //表示在src目录下的css须要编译 '/node_modules/element-ui/lib/' //增长此项 ], loader: 'style-loader!css-loader', },
我的测试了一下,不须要这段代码也能够运行,但网上不少都说要添加,为了以防万一,先添加上,添加完成后保存,打开App.vue(我是以这个vue文件为例,若是要在其余文件中引入,道理同样),我在src文件夹下面新建了一个css文件夹,导入css文件便可。node
<style> /* 引入css样式 */ @import './css/App.css'; </style>
这样就能够成功使用css文件了。webpack
2.vue动态切换组件
在一个项目中,不可避免的须要动态切换组件,用按钮,p标签,a标签等等均可以实现。在这里主要用的是a标签动态切换组件。web
<template> <div> <div> <!-- href设置为javascript:void(0),没有组件的时候防止自动跳转到首部, 经过click属性来切换,定义一个change函数,用来切换组件 --> <a href="javascript:void(0)" @click="Change(c1)">子组件1</a> <a href="javascript:void(0)" @click="Change(c2)">子组件2</a> <a href="javascript:void(0)" @click="Change(c3)">子组件3</a> </div> <!-- 设置默认加载的组件,即咱们想默认展现那个界面 --> <div :is="currentItem"></div> </div> </template> <script> // 导入子组件 import c1 from '@/components/c1'; import c2 from '@/components/c2'; import c3 from '@/components/c3'; export default { data () { return { c1: 'c1', c2: 'c2', c3: 'c3', currentItem: 'c1' // 默认选中第一个组件 }; }, methods: { //a标签调用的时候更改当前组件 Change(Item) { this.currentItem = Item; } }, components: { c1, c2, c3 } }; </script> <style> </style>
这样就能够实现动态切换组件了,若是不想用a标签,也能够用这个方法那其余的标签来完成。npm
小弟初次学习vue,不懂的地方不少,若是表达有错误,请你们在评论指出。element-ui