上午
1.继续学习vue.js
(1)一个组件的 data
选项必须是一个函数,因此每个实例可以维护一份被返回对象的独立的拷贝:
data: function () {
return {
count: 0
}
}
(2)组件通过 Vue.component
全局注册的,需要把注册组件的js写在初始化vue实例的js之前。
(3)vue的全局注册往往是不够理想的。比如,如果你使用一个像 webpack 这样的构建系统,全局注册所有的组件意味着即便你已经不再使用一个组件了,它仍然会被包含在你最终的构建结果中。这造成了用户下载的 JavaScript 的无谓的增加。
(4)如果你通过 Babel 和 webpack 使用 ES2015 模块,那么代码看起来更像:
import ComponentA from './ComponentA.vue'
export default {
components: {
ComponentA
},
// ...
}
下午
2.学习项目里用到的gulp插件。
(1)nodemon(自动重启模块)
const nodemon = require('gulp-nodemon');
nodemon({
script: 'server.js',
ignore: ['app', 'less']
});
(2)node的glob模块允许你使用 *等符号, 来写一个glob规则,像在shell里一样,获取匹配对应规则的文件.
const glob = require('glob');
const files = glob.sync('app/js/controllers/*.js');
(3)Browsersync能让浏览器实时、快速响应您的文件更改(html、js、css、sass、less等)并自动刷新页面
browserSync.init(null, {
proxy: 'http://localhost:' + config.port,
files: ['app/css/*.css', 'app/img/*.{png|jpg|gif}', 'app/**/*.html', 'app/**/*.css',
'app/js/**/*.js'
],
notify: false,
open: false,
port: 8000
});
(4)原来出包还得输两个命令:gulp clean和gulp build
gulp.task('default', ['less', 'ejs','serve','watch']);
gulp.task('build', ['requirejsmin', 'jsmin', 'jscommonmin', 'JsConstMin', 'utilsJsmin','appcssmin','frem','ejs']);
然后我自定义了一个env命令,这下只需要输gulp env即可执行clean和build任务了,
gulp.task('env',['clean','build']);