main.js(入口文件)中的实例化一个Vue实例,赋值给了一个变量vm,运行后可以获得id为app的DOM。
var vm = new Vue({
el: '#app',
router,
template: '<App/>',
components: {App}
});
console.log(vm.$el)
问题是:我只能在入口文件中获取vm.$el,并不能在其他文件获取,那这个vm.$el还有什么使用价值???
main.js(入口文件)中的实例化一个Vue实例,赋值给了一个变量vm,运行后可以获得id为app的DOM。
var vm = new Vue({
el: '#app',
router,
template: '<App/>',
components: {App}
});
console.log(vm.$el)
问题是:我只能在入口文件中获取vm.$el,并不能在其他文件获取,那这个vm.$el还有什么使用价值???
9 回答1.7k 阅读✓ 已解决
6 回答1.5k 阅读
3 回答1.4k 阅读✓ 已解决
4 回答1.2k 阅读✓ 已解决
2 回答1.2k 阅读✓ 已解决
3 回答1k 阅读
3 回答1.3k 阅读✓ 已解决
是通过 Vue 命令行使用 webpack 项目模板生成的项目吗?
webpack 打包的基础是模块化,模块是一个个封闭的上下文,不但入口文件中的私有变量不能被其他文件获取,所有文件中的私有变量都不能在其他文件中获取。
只有通过 export 导出的值才可以在其他模块中访问,因此如果需要在其他模块中使用 vm,你需要 export vm。
因此你需要理解模块概念、ES6 的模块导入、导出操作,以及 webpack 中的一些配置知识。
欢迎参与学习 Vue 你需要知道的 webpack 知识讲座,讲座已成功上线,报名即可立即回看。
本讲座自 2017 年 7 月 11 日起一年内的收入捐给此轻松筹项目受助人。