Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js NodeJS呈现html文件,表单不在角度侧工作_Node.js_Angular_Angular8 - Fatal编程技术网

Node.js NodeJS呈现html文件,表单不在角度侧工作

Node.js NodeJS呈现html文件,表单不在角度侧工作,node.js,angular,angular8,Node.js,Angular,Angular8,我正在使用带有EJS模板视图引擎的ExpressJS。我试图在angular组件上显示一个HTML文件,但是表单标记及其子输入标记在angular端不起作用。它们只显示标签数据 在节点上 agreementController.js exports.getAgreementHtml = async (request, response, next) => { const params = request.query let reqPath = path.join(__dir

我正在使用带有EJS模板视图引擎的ExpressJS。我试图在angular组件上显示一个HTML文件,但是表单标记及其子输入标记在angular端不起作用。它们只显示标签数据

在节点上

agreementController.js

exports.getAgreementHtml = async (request, response, next) => {
    const params = request.query
    let reqPath = path.join(__dirname, '../agreements');
    var agreementObj = {
        user: { email: "example@gmail.com" }
    }
    // render domestic rent html
    ejs.renderFile(reqPath + '/domestic_rent.ejs', agreementObj, {}, function (err, str) {
        if (err !== null) {
            responseObj.status = errorCodes.DATA_NOT_FOUND
            responseObj.message = language.getMessage('NO_RECORD_FOUND')
            response.send(responseObj)
            return
        }

        responseObj.status = errorCodes.OK
        responseObj.data = str
        response.send(responseObj);
        return;
    });
}
  <form>
    <div class="form-group">
        <p><%= user.email %></p>
        <div class="col-sm-offset-2 col-sm-10">
            <input type="text" class="form-control" id="inputEmail3" placeholder="test" required name="test">
        </div>
    </div>
</form>
  getAgreementData() {
    const params = {
      id: this.agreementId
    };
    this.agreementService.getAgreementHtml(params).subscribe(
      (result) => {
        console.log('result agreement data::: ', result);
        if (result.status !== 200) {
          this.commonService.change.emit({ status: 'error', message: 'unknown error' });
          return;
        }
        this.someHtml = result.data;
        return;
      }, (error) => {
        console.log('error', error)
        this.commonService.change.emit({ status: 'error', message: error.message });
      }
    );
  }
国内租金.js

exports.getAgreementHtml = async (request, response, next) => {
    const params = request.query
    let reqPath = path.join(__dirname, '../agreements');
    var agreementObj = {
        user: { email: "example@gmail.com" }
    }
    // render domestic rent html
    ejs.renderFile(reqPath + '/domestic_rent.ejs', agreementObj, {}, function (err, str) {
        if (err !== null) {
            responseObj.status = errorCodes.DATA_NOT_FOUND
            responseObj.message = language.getMessage('NO_RECORD_FOUND')
            response.send(responseObj)
            return
        }

        responseObj.status = errorCodes.OK
        responseObj.data = str
        response.send(responseObj);
        return;
    });
}
  <form>
    <div class="form-group">
        <p><%= user.email %></p>
        <div class="col-sm-offset-2 col-sm-10">
            <input type="text" class="form-control" id="inputEmail3" placeholder="test" required name="test">
        </div>
    </div>
</form>
  getAgreementData() {
    const params = {
      id: this.agreementId
    };
    this.agreementService.getAgreementHtml(params).subscribe(
      (result) => {
        console.log('result agreement data::: ', result);
        if (result.status !== 200) {
          this.commonService.change.emit({ status: 'error', message: 'unknown error' });
          return;
        }
        this.someHtml = result.data;
        return;
      }, (error) => {
        console.log('error', error)
        this.commonService.change.emit({ status: 'error', message: error.message });
      }
    );
  }
协议显示.component.html

<div [innerHTML]="someHtml"></div>


通过使用ElementRef函数,我们可以添加html运行时。 请使用以下步骤:

        @ViewChild('showitems') showitems: ElementRef;

        const elemt: HTMLElement = this.showitems.nativeElement;
        this.someHtml = result.data;
        elemt.innerHTML = this.someHtml;

你能提供更多关于错误或正在发生的输出类型的详细信息吗?@Nelles我在问题中添加了输出附件,请在这个问题中检查nodeJS来自哪里,查看代码你的角度模块没有按预期工作。您是否检查了API是否正确响应预期数据?