web/activities/download/static-src/js/create/download.js

(开头部分) 1KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

import { isEmpty , arrayIndex } from 'common/utils';
import FileChooser from 'app/js/file-chooser/file-choose';
import { chooserUiOpen } from 'app/js/activity-manage/widget/chooser-ui';

export default class DownLoad {
  constructor() {
    this.$form = $('#step2-form');
    this.firstName = $('#title').val();
    this.media = {};
    this.materials = {};
    this.initStep2Form();
    this.initEvent();
    this.initFileChooser();
  }

  initStep2Form() {
    this.validator2 = this.$form.validate({
      rules: {
        title: {
          required: true,
          maxlength: 50,
          trim: true,
          course_title: true,
        },
        link: 'url',
        materials: 'required',
      },
      messages: {
        link: Translator.trans('activity.download_manage.link_error_hint'),
        materials: Translator.trans('activity.download_manage.materials_error_hint')
      }
    });
  }

  initEvent() {
    this.$form.on('click', '.js-btn-delete', (event) => this.deleteItem(event));
    this.$form.on('click', '.js-video-import', () => this.importLink());
    this.$form.on('click', '.js-add-file-list', () => this.addFile());
    this.$form.on('blur', '#title', (event) => this.changeTitle(event));
    
    window.ltc.on('getActivity', (msg) => {
      window.ltc.emit('returnActivity', {valid:this.validator2.form(), data:window.ltc.getFormSerializeObject($('#step2-form'))});
    });
      
    window.ltc.on('getValidate', (msg) => {
      window.ltc.emit('returnValidate', { valid: this.validator2.form() });
    });
  }

  deleteItem(event) {
    let $parent = $(event.currentTarget).closest('li');
    let mediaId = $parent.data('id');
    const $materials = $('#materials');
    this.materials = isEmpty($materials.val()) ? {} :  arrayIndex(JSON.parse($materials.val()), 'fileId');
    if (this.materials && this.materials[mediaId]) {
      delete this.materials[mediaId];
      $materials.val(JSON.stringify(this.materials));
    }
    if (!$parent.siblings('li').length) {
      $materials.val('');

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。