vuedata数据不能最新

通过向接口提交文件,在上传url后跟json参数,通过开关按钮控制json数据的变更

现在问题:

json参数无论是放在外部请求过来还是直接写在data中,点击上传无法拿到按钮调整后的最新json,应该就时data数据更新问题,请各位指教下
template

    <el-dialog
      class="setModel"
      title="模型上传"
      :visible.sync="dialogVisible"
      width="30%"
    >
      <el-select
        v-model="value"
        @change="selectChange"
        placeholder="请选择渲染模式"
      >
        <el-option
          v-for="item in options"
          :key="item.value"
          :label="item.label"
          :value="item.value"
        >
        </el-option>
      </el-select>
      <P></P>
      <el-upload
        class="upload-demo"
        ref="upload"
        :action="uploadUrl"
        :headers="token"
        accept=".rvt,.rfa,.zip,.glzip,.rar,.ifc,.stp,.FBX,.fbx"
        :before-upload="handleUpload"
        :on-change="handleChange"
        :on-success="onSuccess"
        :on-error="error"
        :limit="5"
        :on-exceed="handleExceed"
        :file-list="fileList"
        :auto-upload="false"
      >
        <el-button slot="trigger" size="small" type="primary"
          >选取文件</el-button
        >
        <el-button
          style="margin-left: 10px"
          size="small"
          type="success"
          @click="submitUpload"
          >上传到服务器</el-button
        >
        <div slot="tip" class="el-upload__tip">
          只能上传模型文件且不超过600MB
        </div>
      </el-upload>
    </el-dialog>

script

export default {
  data() {
    return {
      value: "",
      options: [
        {
          value: "0",
          label: "着色",
        },
        {
          value: "1",
          label: "真实",
        },
      ],
      dialogVisible: false,
      statusVisible: false,
      fileList: [],
      token: {
        //导入引擎授权token
        Token: this.configJson.engineToken,
      },
      //导入接口地址
      uploadUrl:
        this.configJson.engineApiUrl + "/api/app/model/upload-file?input=" + this.inputJson,
      //转码配置
      inputJson: "",
    };
  },

  methods: {
    /**
     * @func 下拉列表改变事件
     * @desc
     * @param {}
     * @return {}
     */
    selectChange(value) {
      //this.inputJson.ConfigJson.style = value;
      this.configJson.inputJsonFile.ConfigJson.style = value;
    },
    /**
     * @func 上传文件之前的回调
     * @desc
     * @param {}
     * @return {}
     */
    handleUpload(file) {
      this.configJson.inputJsonFile.Name = file.name;
      if (file.size / 1024 / 1024 > 601) {
        this.$message.warning("模型大小超过限制");
        return false;
      }
    },
    /**
     * @func 超出文件个数回调
     * @desc
     * @param {}
     * @return {}
     */
    handleExceed(files, fileList) {
      this.$message.warning(
        `当前限制选择 5 个文件,本次选择了 ${files.length} 个文件,共选择了 ${
          files.length + fileList.length
        } 个文件`
      );
    },
    handleChange(file, fileList) {},
    /**
     * @func 文件上传成功回调
     * @desc
     * @param {}
     * @return {}
     */
    onSuccess(response) {
      this.$message.warning(response.codeMsg);
    },
    /**
     * @func 失败回调
     * @desc
     */
    error() {
      this.$message.warning("上传失败");
    },
    /**
     * @func 提交文件到服务器
     * @desc
     * @param {}
     * @return {}
     */
    submitUpload() {
      this.uploadUrl =
        this.uploadUrl + JSON.stringify(this.configJson.inputJsonFile);
      this.$refs.upload.submit();
    },
  },
  beforeUpdate() {
    console.log(this.uploadUrl);
  },
};
  • this.inputJson拿不到最新的值,尝试写在其他地方也不行,要么反复提交、要么undefined*
uploadUrl:
        this.configJson.engineApiUrl +
        "/api/app/model/upload-file?input=" +
        this.inputJson,

inputJson这个值在什么时候赋值上在什么时候拿去

没看到inputJson被赋值的地方呀

//导入接口地址
uploadUrl:
this.configJson.engineApiUrl + "/api/app/model/upload-file?input=" + this.inputJson,
//转码配置
inputJson: "",
inputJson都在这个定义的上面肯定取不到值的啊,你可以在created或mounted中在赋值uploadUrl