Dva: الملف الهدف الذي تم تطويره وبناؤه باستخدام dva كبير جدًا (1.3M) .لا أعرف كيف أقوم بتقليل حجم الحزمة؟

تم إنشاؤها على ١٣ ديسمبر ٢٠١٦  ·  5تعليقات  ·  مصدر: dvajs/dva

مرحبا!

أنا أستخدم dva للتطوير مؤخرًا ، وأنا ممتن جدًا لمؤلفي dva على عملهم الشاق
المشكلة التي واجهتها في الوقت الحالي هي أنه لا يوجد العديد من ملفات المشروع ، لكن الحزمة المجمعة كبيرة جدًا (وصل index.js إلى 1.3 ميجا بايت). لا أعرف ما إذا كان بناء dva يمكنه دعم تقسيم المشروع إلى إدخالات متعددة وتقسيم الصفحات حسب الوظيفة؟

question

التعليق الأكثر فائدة

يمكن تقديم الوحدات المقابلة عند الطلب ، على سبيل المثال ، يمكن تقديم 折线图 ، 柱状图 ، 饼图 النحو التالي:


// ==== 以下必须引入 ====
// core
import echarts from 'echarts/lib/echarts'
// for ie8
//import 'zrender/lib/vml/vml'
// 柱状图
import 'echarts/lib/chart/bar'
// 折线图
import 'echarts/lib/chart/line'
// 饼图
import 'echarts/lib/chart/pie'

// ==== 以下不引入也可以,只是没效果,也不会报错 ====
// tooltip
import 'echarts/lib/component/tooltip'
// legend
import 'echarts/lib/component/legend'
// title
import 'echarts/lib/component/title'


echarts.init(...)

الأمر الأكثر إزعاجًا هو أن هذه الوحدات ليست تبعيات قوية. ستجد أن بعض الوحدات النمطية ليس لها أي تأثير إذا لم يتم تقديمها ، وستتضمن بعض الوحدات رسالة خطأ أثناء العرض ، مما يتطلب إدخال وحدات نمطية معينة.

بالطبع ، من الأسهل كتابة ملحق babel. . . . .

ال 5 كومينتر

انشر package.json

nikogu أدناه هو الحزمة الخاصة بي.

 {
  "private": true,
  "entry": {
    "index": "./src/index.js"
  },
  "peerDependencies": {
  },
  "dependencies": {
    "antd": "^2.4.3",
    "dva": "^1.1.0",
    "echarts": "^3.3.1",
    "echarts-for-react": "^1.1.6",
    "moment-timezone": "^0.5.10",
    "path-to-regexp": "^1.7.0",
    "qs": "^6.3.0",
    "react": "^15.3.2",
    "react-dom": "^15.3.2",
    "reqwest": "^2.0.5"
  },
  "devDependencies": {
    "atool-build": "^0.9.0",
    "atool-test-mocha": "^0.1.5",
    "babel-plugin-dev-expression": "^0.2.1",
    "babel-plugin-dva-hmr": "^0.2.0",
    "babel-plugin-import": "^1.1.0",
    "babel-plugin-transform-runtime": "^6.9.0",
    "babel-runtime": "^6.9.2",
    "dora": "^0.4.3",
    "dora-plugin-proxy": "^0.8.4",
    "dora-plugin-webpack": "^0.8.1",
    "dora-plugin-webpack-hmr": "^0.2.1",
    "expect": "^1.20.2",
    "redbox-react": "^1.3.2"
  },
  "scripts": {
    "start": "dora --plugins \"proxy?watchDirs=./mock,webpack?port=8000,webpack-hmr\"",
    "build": "atool-build",
    "test": "atool-test-mocha ./src/**/*-test.js"
  }
}

لقد أنشأت المشروع باستخدام dvacli

dva new myproject

echarts كبير بالفعل

codering الموقع الرسمي echarts3 قال إنه أكثر من 170 ألف بعد الضغط.

يمكن تقديم الوحدات المقابلة عند الطلب ، على سبيل المثال ، يمكن تقديم 折线图 ، 柱状图 ، 饼图 النحو التالي:


// ==== 以下必须引入 ====
// core
import echarts from 'echarts/lib/echarts'
// for ie8
//import 'zrender/lib/vml/vml'
// 柱状图
import 'echarts/lib/chart/bar'
// 折线图
import 'echarts/lib/chart/line'
// 饼图
import 'echarts/lib/chart/pie'

// ==== 以下不引入也可以,只是没效果,也不会报错 ====
// tooltip
import 'echarts/lib/component/tooltip'
// legend
import 'echarts/lib/component/legend'
// title
import 'echarts/lib/component/title'


echarts.init(...)

الأمر الأكثر إزعاجًا هو أن هذه الوحدات ليست تبعيات قوية. ستجد أن بعض الوحدات النمطية ليس لها أي تأثير إذا لم يتم تقديمها ، وستتضمن بعض الوحدات رسالة خطأ أثناء العرض ، مما يتطلب إدخال وحدات نمطية معينة.

بالطبع ، من الأسهل كتابة ملحق babel. . . . .

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات