电商商城定制开发从零开始使用vue-easy-tree

目录


前言

之前写了vue实现tree电商商城定制开发虚拟滚动的文章(),电商商城定制开发但是发现有部分同学可能在引入组件时就出现一些问题。这篇文章描述下如何引入组件。

版本

示例所用相关版本:
vue:v2.6.11

vue-cli:v4.5.9

:v12.16.3

webpack:4.14.0

node-:4.14.1

sass-loader:8.0.2

示例

使用 vue create tree-demo 初始化一个demo:

  1. 选择第一个[Vue 2...]:
  2.  安装完成后切换到 tree-demo 目录下
  3.  安装 @wchbrad/vue-easy-tree,使用命令 npm add @wchbrad/vue-easy-tree:
  4.  安装sass-loader,命令:npm add sass-loader@8.0.2(有版本要求);
  5.  安装node-sass,命令:npm add node-sass@4.14.1(有版本要求)
  6.  删除并改写 src\App.vue 成如下:
    1. <template>
    2. <div id="app">
    3. <HelloWorld />
    4. </div>
    5. </template>
    6. <script>
    7. import HelloWorld from "./components/HelloWorld.vue";
    8. export default {
    9. name: "App",
    10. components: {
    11. HelloWorld,
    12. },
    13. };
    14. </script>
    15. <style>
    16. html,
    17. body {
    18. margin: 0;
    19. padding: 0;
    20. }
    21. </style>
  7. 示例这里使用局部引用,全局引入可以参考,修改 src\components\HelloWorld.vue 成如下代码:
    1. <template>
    2. <div class="hello">
    3. <vue-easy-tree
    4. ref="veTree"
    5. node-key="id"
    6. height="calc(100vh - 30px)"
    7. :data="treeData"
    8. :props="props"
    9. ></vue-easy-tree>
    10. </div>
    11. </template>
    12. <script>
    13. import VueEasyTree from "@wchbrad/vue-easy-tree";
    14. // 样式文件,可以根据需要自定义样式或主题
    15. import "@wchbrad/vue-easy-tree/src/assets/index.scss";
    16. export default {
    17. name: "HelloWorld",
    18. components: {
    19. VueEasyTree,
    20. },
    21. data() {
    22. return {
    23. props: {
    24. label: "name",
    25. children: "children",
    26. },
    27. treeData: [],
    28. };
    29. },
    30. created() {
    31. const data = [],
    32. root = 8,
    33. children = 3,
    34. base = 1000;
    35. for (let i = 0; i < root; i++) {
    36. data.push({
    37. id: `${i}`,
    38. name: `test-${i}`,
    39. children: [],
    40. });
    41. for (let j = 0; j < children; j++) {
    42. data[i].children.push({
    43. id: `${i}-${j}`,
    44. name: `test-${i}-${j}`,
    45. children: [],
    46. });
    47. for (let k = 0; k < base; k++) {
    48. data[i].children[j].children.push({
    49. id: `${i}-${j}-${k}`,
    50. name: `test-${i}-${j}-${k}`,
    51. });
    52. }
    53. }
    54. }
    55. this.treeData = data;
    56. },
    57. };
    58. </script>
    59. <!-- Add "scoped" attribute to limit CSS to this component only -->
    60. <style scoped>
    61. </style>
  8.  运行:npm run serve

最简单的demo完成,效果如下:

网站建设定制开发 软件系统开发定制 定制软件开发 软件开发定制 定制app开发 app开发定制 app开发定制公司 电商商城定制开发 定制小程序开发 定制开发小程序 客户管理系统开发定制 定制网站 定制开发 crm开发定制 开发公司 小程序开发定制 定制软件 收款定制开发 企业网站定制开发 定制化开发 android系统定制开发 定制小程序开发费用 定制设计 专注app软件定制开发 软件开发定制定制 知名网站建设定制 软件定制开发供应商 应用系统定制开发 软件系统定制开发 企业管理系统定制开发 系统定制开发